如何获取查询结果:
这一点比较重要,因为并不是执行完查询语句后直接返回了查询的数据,前面提到会得到一个对象类型,那么目前阶段如何获取到真正的数据呢,其实也是可以的。假设执行$res = mysqli_query($link,$sql)后获取到变量$res则可使用mysqli_fetch_assoc($res)获取到查询的数据,但是如果有多条数据需要多次执行。示例代码如下
//---....以上是连接数据库的代码 省略
//执行查询的SQL语句 获取到一个对象类型的结果集
$res = mysqli_query($link, $sql);
//从结果集中取一条数据
$row = mysqli_fetch_assoc($res);
print_r($row);
//从结果集中再取一条数据
$row = mysqli_fetch_assoc($res);
print_r($row);
//.....多条数据需要重复执行....
我们注意到如果有多条数据上述程序需要写大量重复代码,并且很多时候并不清楚有多少条数据,那么可以采用什么方式更好的解决这个问题呢?那就是之前我们讲的循环,在不清楚循环次数的前提下使用while循环比较适合。代码如下:
while ($row = mysqli_fetch_assoc($res)){
print_r($row);
}
或者使用如下代码将所有数据存储到一个数组中
$datas = [];
while ($row = mysqli_fetch_assoc($res)){
$datas[] = $row;
}
print_r($datas);