我不确定这是不是一个bug,但有时当我使用mysql检索结果时,我得到这个:
$result->fetch_array();
mysqli_result Object (
[current_field] => 0
[field_count] => 1
[lengths] => Array (
[0] => 3
)
[num_rows] => 1
[type] => 0
) Fatal error: Cannot use object of type mysqli_result as array
看一下文档,它应该返回一个数组或null,而不是一个对象。这是臭虫吗?
看一下压缩后的代码:
$query="SELECT * FROM table where id=''";
$result=$link->query($query);
$row=$result->fetch_array();
print_r($row);
示例代码没有重现PHP 5.3.4中的问题(所有示例代码都应该这样做)。
$result
的类型为mysqli_result。基于此和转储值,您使用的是$result
,而您应该使用$row
。
您必须将$result->fetch_array()
的返回值分配给一个变量,然后该变量变为数组或null。
。$row = $result->fetch_array();
$row[0]
等等等等
从mysqli结果对象的文档中:
mySQLi的结果是:
表示从对数据库
的查询中获得的结果集
当我使用PHP读取MySQL时,我使用这个:
$query = mysql_query("select something from something");
while($row = mysql_fetch_array($query)){
$msql[$i]=$row;
$i++;
}
,现在,我有一个二维$msql数组与选定的值