从同一个类中的另一个静态函数调用静态函数时SQL查询的问题

时间:2011-07-11 22:11:21

标签: php mysql mysqli

我是PHP新手,但不是编程新手。我有一个奇怪的问题。这是一件非常简单的事情,我觉得解决方案也很简单,但我没有运气就试了好几个小时。

我有一个模型类User,它包含以下函数:

public static function byUsername($username) {
    $row = DB::fetchOne('SELECT * FROM users WHERE username = ?', $username);
    if (!is_null($row)) {
        return new User($row);
    }
    return null;
}

它在任何地方都按预期工作,返回给定正确用户名的User对象。除了User类本身:当我使用User::byUsername('a_valid_username')self::调用函数时,来自User类中的另一个静态函数,DB::fetchOne()函数只返回null },没有错误或例外。

我错过了什么?

1 个答案:

答案 0 :(得分:1)

我发现byUsernam()方法内部没有问题。

执行

echo $username;

print_r( debug_backtrace() );

byUsernam()的开头,以了解更多被称环境。