Я писал сценарий для отображения социальных счетчиков акций различных API, и во время работы с PHP файлом он дает ошибку Parse: синтаксическая ошибка, неожиданный T_FUNCTION. Я знаю, что это более старая версия PHP-версии, так как моя - 5.2.17, но мне нужны предложения для преодоления этой проблемы. Здесь код:
// Facebook
array(
'name' => 'facebook',
'method' => 'GET',
'url' => 'https://graph.facebook.com/fql?q=' . urlencode("SELECT like_count, total_count, share_count, click_count, comment_count FROM link_stat WHERE url = \"{$url}\""),
'callback' => function($resp) {
if(isset($resp->data[0]->total_count)) {
return (int)$resp->data[0]->total_count;
} else {
return 0;
}
})
Анонимные функции были введены в PHP 5.3, поэтому синтаксис не будет работать с вашей версией PHP. Сначала попробуйте определить функцию, а затем передайте имя функции в массив.
function handle_response($resp)
{
if(isset($resp->data[0]->total_count)) {
return (int)$resp->data[0]->total_count;
} else {
return 0;
}
}
array(
'name' => 'facebook',
'method' => 'GET',
'url' => 'https://graph.facebook.com/fql?q=' . urlencode("SELECT like_count, total_count, share_count, click_count, comment_count FROM link_stat WHERE url = \"{$url}\""),
'callback' => 'handle_response'
)