当我尝试使用fetch_assoc或fetch_array(MYSQLI_ASSOC)时,程序崩溃并且不显示任何错误信息(我确实将error_reporting更改为E_ALL)。但是当使用fetch_array(MYSQLI_NUM)或fetch_row时它工作正常()。 奇怪的是我可以在Wamp上运行我的程序。但我不能手动安装Apache + PHP + MYSQL环境。 这是PHP配置问题还是MYSQL问题?
$studentId = $this->mydblink->real_escape_string($studentId);
$result = $this->mydblink->query("SELECT * FROM student WHERE id = '$studentId'");
if($result->num_rows <= 0){
$result->free();
return null;
}
else{
$returnValue = array();
while($row = $result->fetch_assoc()){
array_push($returnValue,$row);
}
$result->free();
return $returnValue;
}
答案 0 :(得分:0)
fetch_array()创建一个关联数组,其中有一个键和值。 fetch_assoc()只有值
您还可以使用fetch_object()创建表名的对象。
| id | category | name |
----------------------------------
| 1 | 2, 5, 7, 28 | Will |
----------------------------------
| 2 | 2, 9, 15, 18 | Drew |
实施例
$sql=mysqli_query($connect, "SELECT id, category, name FROM users");
$data=mysqli_fetch_array($sql);
// 0=>id, 1=>category, 2=>name
$data[1]; // is same like $data['category'];
$data['category'];
$data=mysqli_fetch_assoc($sql);
$data['name'];
$data=mysqli_fetch_object($sql);
$data->name;
$data->category;
$data->id;