3

当我尝试使用 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;
    }
4

1 回答 1

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;
于 2013-07-18T06:47:48.593 回答