我在理解PHP如何解析条件方面遇到了一些麻烦。
例如,
while (list($id, $name, $salary) = mysql_fetch_row($result)) { ...}
(http://php.net/manual/en/function.list.php)
将在列表可以检索值时评估为true。但是打印列表将打印列表变量中包含的值。该手册还说list()返回一个数组。那么,条件是否知道mysql获取尝试成功了?
如果它确实返回一个布尔值,你如何直接显示它而不是
if(expr) echo 'true';
谢谢!
答案 0 :(得分:5)
list()
将null
分配给列出的变量(如果分配了非数组或数组太少的项目。)
当null
求值为false
且包含多个项的数组求值为true
时,while
循环才能使用该表达式。
list()
将触发“未定义索引”E_NOTICE
错误