我正在编写脚本以显示各种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;
}
})
答案 0 :(得分: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'
)