MySQLi dan PDO ialah dua sambungan dalam PHP yang menyambung ke pangkalan data MySQL: Fungsi: MySQLi: API berorientasikan objek dan prosedur, hanya menyokong MySQLPDO: antara muka pangkalan data abstrak, menyokong berbilang pangkalan data Pengendalian ralat: MySQLi: mengembalikan kod ralat PDO: membuang Exception Disediakan Pernyataan: MySQLi: PDO Disokong: Prestasi Disokong: MySQLi: PDO umumnya lebih pantas: Lebih baik untuk aplikasi yang perlu berinteraksi dengan berbilang pangkalan data
MySQLi lwn. PDO: Akses MySQL dalam PHP
Dalam PHP, MySQLi dan PDO ialah dua sambungan biasa untuk menyambung dan mengendalikan pangkalan data MySQL. Kedua-duanya menyediakan akses kepada MySQL, tetapi masing-masing mempunyai kelebihan dan kekurangan.
MySQLi
MySQLi ialah antara muka yang dipertingkatkan untuk MySQL, menyediakan API berorientasikan objek dan prosedur. Ia lebih pantas dan lebih stabil daripada fungsi mysql_* lama.
PDO (Objek Data PHP)
PDO ialah antara muka pangkalan data abstrak yang menyokong pelbagai pangkalan data, termasuk MySQL, PostgreSQL, Oracle dan SQL Server. Ia menyediakan API yang konsisten untuk mengakses pangkalan data yang berbeza.
Perbezaan
Ciri-ciri | MySQLi | PDO |
---|---|---|
OO | Pengendalian Ralat | Pengecualian |
penyataan yang disediakan | Sokongan | |
Sokongan pangkalan data | MySQL sahaja | |
Prestasi | Umum | |
Kebolehpercayaan | PHP 5.0 ke atas | |
Kes praktikal |
// 创建 MySQLi 连接
$mysqli = new mysqli("localhost", "username", "password", "database");
// 检查连接错误
if ($mysqli->connect_error) {
die("连接失败: " . $mysqli->connect_error);
}
// 执行查询
$result = $mysqli->query("SELECT * FROM table");
// 循环查询结果
while ($row = $result->fetch_assoc()) {
echo $row['column'];
}
// 关闭连接
$mysqli->close();
// 创建 PDO 连接
$dsn = 'mysql:host=localhost;dbname=database';
$user = 'username';
$password = 'password';
try {
$pdo = new PDO($dsn, $user, $password);
} catch (PDOException $e) {
die("连接失败: " . $e->getMessage());
}
// 预处理查询
$stmt = $pdo->prepare("SELECT * FROM table");
// 执行查询
$stmt->execute();
// 循环查询结果
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['column'];
}
// 关闭连接
$pdo = null;
Akses MySQLi
disediakan oleh MySQL pangkalan data . MySQLi sesuai untuk situasi di mana anda hanya perlu berinteraksi dengan MySQL, manakala PDO lebih sesuai untuk digunakan dengan berbilang pangkalan data. Untuk aplikasi kritikal prestasi, PDO ialah pilihan yang lebih baik.Atas ialah kandungan terperinci Apakah perbezaan antara MySQLi dan PDO dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!