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

发布于 2024-11-19 16:15:55 字数 550 浏览 0 评论 0原文

我是 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:: 调用该函数时用户类,DB::fetchOne() 函数仅返回null,没有错误或异常。

我缺少什么?

I'm new to PHP, but not new to programming. I have a strange problem. It's such a simple thing, and I have the feeling the solution is simple also, but I tried for hours without luck.

I have a model class User which contains the following function:

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

It works as expected everywhere, returning a User object given the right username. Except in the User class itself: when I call the function with User::byUsername('a_valid_username'), or self::, from another static function further down in the User class, the DB::fetchOne() function just returns null, no errors or exceptions.

What am I missing?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

极度宠爱 2024-11-26 16:15:55

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

执行

echo $username;

或可以了解有关被调用环境的更多信息。

print_r( debug_backtrace() );

byUsernam() 开头

I don't see a problem inside of the byUsernam() method.

Perform

echo $username;

or

print_r( debug_backtrace() );

right at the beginning of byUsernam() to learn more of the called environment.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文