php代码,利用mysqli扩展查询mysql数据库简单范例
发布于 作者:苏南大叔 来源:程序如此灵动~
本文依然是php代码利用mysqli扩展,查询mysql数据库的代码范例。相比较上一篇文章而言,本文的方法更加简单实用。

大家好,这里是苏南大叔的程序如此灵动博客,记录苏南大叔的编程所学所想。本文描述php利用mysqli扩展连接mysql数据库的第二种方法。测试环境:win10,php@7.4.3nts,mysqli@,mysql。
基本前提
这里需要php.ini开始php_mysqli扩展,
extension = mysqli目前有两篇文章,讲述php利用mysqli查询mysql数据库的方式:
基本信息
默认连接localhost的3306,用户名密码都是root。测试数据库是test,数据表是users3。建表语句如下:
DROP TABLE IF EXISTS `users3`;
CREATE TABLE `users3` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`department` varchar(50) DEFAULT NULL,
`name` varchar(50) DEFAULT NULL,
`password` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `users3` VALUES (1,'技术部','苏南大叔','11111'),(2,'国际部','苏南大叔','22222'),(3,'后勤部','sunan大叔','33333');查询语句【推荐】
这个查询语句范例非常简单:
$conn = mysqli_connect('localhost', 'root', 'root', 'test', 3306);
if (!$conn) {
printf("Can't connect to MySQL Server. Errorcode: %s ", mysqli_connect_error());
exit;
}
if ($res = mysqli_query($conn, 'SELECT * from users3')) {
while ($row = mysqli_fetch_assoc($res)) {
printf("%s (%s) ", $row['name'], $row['department']);
}
mysqli_free_result($res);
}
mysqli_close($conn);本文中的代码,更简单更符合逻辑,苏南大叔推荐使用。

查询语句二
$conn = mysqli_connect('localhost', 'root', 'root', 'test', 3306);
if (!$conn) {
printf("Can't connect to MySQL Server. Errorcode: %s ", mysqli_connect_error());
exit;
}
$res = mysqli_query($conn,'SELECT * from users3');
while ($row = mysqli_fetch_array($res)) {
echo $row['name'] , $row['department'], '<br />';
}
mysqli_close($conn);这个例子中,使用的是mysqli_fetch_array()来获得数据。
_assoc 对比 _array
mysqli_fetch_assoc()对比mysqli_fetch_array(),看起去使用效果是一样的。进行一下对比:
【mysqli_fetch_assoc()】:
$conn = mysqli_connect('localhost', 'root', 'root', 'test', 3306);
$res = mysqli_query($conn,'SELECT * from users3');
while ($row = mysqli_fetch_assoc($res)) {
var_dump($row);
}输出:
array(4) {
["id"]=>
string(1) "1"
["department"]=>
string(9) "技术部"
["name"]=>
string(12) "苏南大叔"
["password"]=>
string(5) "11111"
}【mysqli_fetch_array()】:
$conn = mysqli_connect('localhost', 'root', 'root', 'test', 3306);
$res = mysqli_query($conn,'SELECT * from users3');
while ($row = mysqli_fetch_array($res)) {
var_dump($row);
}
mysqli_close($conn);输出:
array(8) {
[0]=>
string(1) "1"
["id"]=>
string(1) "1"
[1]=>
string(9) "技术部"
["department"]=>
string(9) "技术部"
[2]=>
string(12) "苏南大叔"
["name"]=>
string(12) "苏南大叔"
[3]=>
string(5) "11111"
["password"]=>
string(5) "11111"
}很显然,同一个数据在mysqli_fetch_array()中有冗余的输出。所以,推荐使用mysqli_fetch_assoc()。
相关链接
- http://doc.php.sh/zh/book.mysqli.html
- https://newsn.net/say/php-mysqli.html
- https://newsn.net/say/php-mysqli-2.html
总结
更多苏南大叔的php相关经验文章,请点击: