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

mod*_*ser 5 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::byUsername('a_valid_username'),或者self::,从另一个静态函数在User类,则进一步下行DB::fetchOne()函数只是返回null,没有错误或异常.

我错过了什么?

Ste*_*eAp 1

我没有看到该byUsernam()方法内部有问题。

履行

echo $username;
Run Code Online (Sandbox Code Playgroud)

或者

print_r( debug_backtrace() );
Run Code Online (Sandbox Code Playgroud)

就在开始时byUsernam()了解更多有关被调用环境的信息。