gpt4 book ai didi

php - mysql_fetch_assoc() 返回意外值

转载 作者:行者123 更新时间:2023-11-29 06:24:10 24 4
gpt4 key购买 nike

我正在开发一个项目,其中使用 mysql_fetch_assoc 返回关联数组。

但是,我很困惑为什么它会返回TRUE

我查看了 PHP 手册页,它应该返回的唯一 bool 值是 FALSE,并且只有在失败时才返回。

虽然我使用的是一组自定义的抽象类,但它基本上是这样做的:

$result = mysql_query("SELECT * FROM table WHERE filename = 'test1.jpg'");
var_dump(mysql_fetch_assoc($result)); // bool(true)

有谁知道为什么它会返回 TRUE 而不是数组?

更新

好吧,在尝试了一些事情之后,我确定了它是我的库,因为运行上面的代码会返回一个关联数组。我不知道为什么它返回 TRUE,但现在,我将停止让事情变得比它们必须的更复杂(我的问题),而只使用 mysqli (感谢提示,Michael)而不是我自己的 ActiveRecord 类,这显然不起作用。

谢谢!

最佳答案

我也遇到了同样的事情。这是我的一个愚蠢的编码错误。

我一开始是:

$result = mysql_query($someSql);
while($row = mysql_fetch_assoc($result)) {
// do stuff
}

效果很好。然后我把它改为:

$result = mysql_query($someSql);
while($row = mysql_fetch_assoc($result) && $someCondition) {
// do stuff
}

这被解释为$row = (mysql_fetch_assoc($result) && $someCondition),这意味着$row在存在时变为true还剩多少行,第二个条件为 true

我本来想写的是:

$result = mysql_query($someSql);
while(($row = mysql_fetch_assoc($result)) && $someCondition) {
// do stuff
}

关于php - mysql_fetch_assoc() 返回意外值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1137794/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com