我不确定这是不是错误,但有时当我使用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);
答案 0 :(得分:1)
{5.3}中的sample code不会重现问题(所有示例代码都应该这样做)。
$result
的类型为mysqli_result。根据该值和转储值,您使用的是$result
$row
。
答案 1 :(得分:0)
您必须将$result->fetch_array()
的返回值分配给变量然后变为数组的变量。
e.g。
$row = $result->fetch_array();
$row[0]
等等。
来自mysqli result object的文档:
mySQLi结果是:
表示从对数据库的查询中获得的结果集
答案 2 :(得分:0)
当我使用PHP从MySQL读取时,我使用它:
$query = mysql_query("select something from something");
while($row = mysql_fetch_array($query)){
$msql[$i]=$row;
$i++;
}
现在,我有一个带有选定值的二维$ msql数组