本期要点:了解 mysqli_result 类是如何从数据库查询中获取结果集的
通过 mysqli::query 的返回值得到 mysqli_result 对象
通过调用 fetch_array() 方法从结果集获取出数据
如何依次获取多条数据
while 循环
将查询结果保存到数组
mysqli_result 类
我们接着《MySQL丨通过 PHP 执行 SQL 语句》中的内容,把之前的 SQL 语句更换成:ELECT * FROM msg ORDER BY id DESC(也就是按 id 进行倒序排列)
header("Content-type: text/html; charset=utf-8"); //如果浏览器输出乱码就加上这一句
//预先定义数据库连接参数
$host = '127.0.0.1';
$user = 'root';
$pwd = 'root';
$dbname = 'php';
//连接到数据库
$db = new mysqli($host, $user, $pwd, $dbname);
//检查连接是否成功
if ( $db->connect_errno <> 0 ) {
echo "链接失败";
echo $db->connect_error;
}
//编写SQL
//$sql = "INSERT INTO msg (content,user,intime) VALUES ('aaa','bbb',123456)";注释掉原来的语句
$sql = "SELECT * FROM msg ORDER BY id DESC";
//执行SQL
$is = $db->query( $sql ); //获取返回值
var_dump( $is );
//判断执行是否成功
if ( $is == true) {
echo "插入成功";
}else {
echo "插入失败";
}
然后在浏览器输出,看到返回值不是布尔值,而变成了一个对象:
我们可以看到对象来自 mysqli_result 个类(类的实例化就是对象)。mysqli_result 类是一个系统类,代表从一个数据库查询中获取的结果集。
语法参考:【PHP 手册】-【函数参考】-【数据库扩展】-【针对各数据库系统