Thumbsup:为什么将$ user_id解释为函数?

时间:2012-08-14 06:00:22

标签: php function callback warnings

详情

id=12用户尝试打开页面时,会出现以下错误:

警告:call_user_func()要求参数1是有效的回调函数,找不到函数'12'或者在第201行的E:\ thumbsup2 \ classes \ thumbsup.php中找到无效的函数名称

违规行为$user_id = (int) call_user_func(ThumbsUp::config('user_id_callback'));

thumbsup.php

public static function get_user_id()
{
    // Cache
    static $user_id = FALSE;

    // This code only needs to be executed once per request
    if ($user_id !== FALSE)
        return $user_id;

    // The callback config is left empty
    if ( ! ThumbsUp::config('user_id_callback'))
        return $user_id = NULL;

    // Load the user id
    $user_id = (int) call_user_func(ThumbsUp::config('user_id_callback'));//<<-- line 201

    // Set user id to NULL if not found
    return ($user_id) ? $user_id : $user_id = NULL;
}

在config.php中

 'user_id_callback' => $userz_id, //                                 <<-- $userz_id is 12

问题

如何以$ user_id返回12?为什么将12解释为函数?

2 个答案:

答案 0 :(得分:1)

由于         call_user_func(::配置( 'user_id_callback')) user_id_callback是12。

答案 1 :(得分:1)

根本不需要call_user_func方法。看起来你正在做的就是从配置文件加载你的用户ID,看起来你没有做任何修改它的事情,所以它应该有用。

$user_id = ThumbsUp::config('user_id_callback');