【发布时间】:2013-03-23 17:13:24
【问题描述】:
有人告诉我,我可以检查 SELECT 语句是否找到具有语法的列
$rows = query( "SELECT * FROM tbl WHERE id = idx");
if ( $rows == false )
它似乎有效。
无论如何,如果我检查 if ( $rows == 0 ) 它不会返回相同的值。
0 和 false 不应该是一样的吗(当然除了类型)?
查询没有找到行时返回的实际值是多少?我问是因为它似乎不是假的,因为声明 var_dump( $rows === false ) 打印出 false..
***编辑:对不起,query() 是别人编写的库中的一个函数,我不知道(我现在从 sql 开始......)。它只是执行一条 SQL 语句,返回结果集中所有行的数组,或者在(非致命)错误(如未找到行)时返回 false。
不过,我还有一个小问题。
该函数在找不到任何行时返回 false,所以我不应该能够用 if ( $rows === false ) 捕获它吗?
为什么var_dump(false) 不打印我的任何东西,而var_dump(true) 打印我1?
【问题讨论】:
-
你的意思是
mysql_query()而不是query()? -
您确定不想关闭字符串吗?
标签: mysql sql phpmyadmin