原文: PHP5: mysqli 插入, 查询, 更新和删除 Insert Update Delete Using mysqli (CRUD)
Mysqli提供了
面向对象和
面向过程两种方式来与数据库交互,分别看一下这两种方式。
1. PHP 连接 MySQL
1.面向对象
在面向对象的方式中,mysqli被封装成一个类,它的构造方法如下:
__construct ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket ]]]]]] )
在上述语法中涉及到的参数说明如下。
l host:连接的服务器地址。
l username:连接数据库的用户名,默认值是服务器进程所有者的用户名。
l passwd:连接数据库的密码,默认值为空。
l dbname:连接的数据库名称。
l port:TCP端口号。
l socket:UNIX域socket。
要建立与MySQL的连接可以通过其构造方法实例化mysqli类,例如下面的代码:
<?php
$db_host = "localhost"; //连接的服务器地址
$db_user = "root"; //连接数据库的用户名
$db_psw = "root"; //连接数据库的密码
$db_name = "ikeepstudying"; //连接的数据库名称
// 创建连接
$conn = new mysqli($db_host,$db_user,$db_psw,$db_name);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
// 或者使用
// die('Error : ('. $conn->connect_errno .') '. $conn->connect_error);
}
echo "连接成功";
?>
mysqli还提供了一个连接MySQL的成员方法connect()。当实例化构造方法为空的mysqli类时,用mysqli对象调用connect()方法同样可连接MySQL,例如,下面的代码:
<?php
$db_host = "localhost"; //连接的服务器地址
$db_user = "root"; //连接数据库的用户名
$db_psw = "root"; //连接数据库的密码
$db_name = "ikeepstudying"; //连接的数据库名称
$conn = new mysqli();
$conn->connect($db_host,$db_user,$db_psw,$db_name);
// 检测连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
// 或者使用
// die('Error : ('. $conn->connect_errno .') '. $conn->connect_error);
}
echo "连接成功";
?>
关闭与MySQL服务器的连接通过mysqli对象调用close()方法即可,例如:
$conn->close();
2.面向过程
在面向过程的方式中,mysqli扩展提供了函数mysqli_connect()与MySQL建立连接,该函数的语法格式如下:
mysqli_connect ([ string $host [, string $username [, string $passwd [, string $dbname [, int $port [, string $socket ]]]]]] )
mysqli_connect()函数的用法与mysql扩展中的mysql_connect()函数用法十分相似,下面是mysqli_connect()函数的用法示例:
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$database = "ikeepstudying";
// 创建连接
$conn = mysqli_connect($servername, $username, $password, $database);
// 检测连接
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
echo "连接成功";
?>
关闭与MySQL服务器的连接使用mysqli_close()函数,例如:
mysqli_close();