首頁 >後端開發 >php教程 >PHP 資料庫連接

PHP 資料庫連接

王林
王林原創
2024-08-29 13:14:34757瀏覽

資料庫是任何程式語言的重要組成部分之一。為了處理動態專案和資料管理,我們需要有一個資料庫。 PHP 支援各種資料庫連線。 MySQL 是使用最廣泛的關聯式資料庫之一,也主要與 PHP 一起使用。考慮到 PHP 中的資料庫連接一詞,MySQL 本身有多種方式在應用程式中建立連接以進行資料庫操作。連接PHP-MYSQL後,我們可以做各種事情,例如插入記錄、刪除記錄、更新記錄等。本文將看到使用PHP語言的資料庫連接的各種方式,所以請繼續閱讀以掌握它正確地。

廣告 該類別中的熱門課程 PHP 開發人員 - 專業化 | 8 門課程系列 | 3次模擬測驗

開始您的免費軟體開發課程

網頁開發、程式語言、軟體測試及其他

如何連接PHP資料庫?

在建立連接之前,我們應該了解諸如主機名稱、資料庫使用者名稱、資料庫密碼、連接埠(如果是應用程式)等詳細資訊。每種程式語言都有其獨特的方式來與資料庫建立連接並使用它。 PHP 中的資料庫並不像我們在 JAVA 這樣的程式語言中看到的那麼大的任務。有幾行非常簡單的程式碼可以連接資料庫。

在PHP語言中,我們可以透過以下方式進行資料庫連線:

1. MySQL

這僅適用於 MySQL 資料庫。此擴充遵循與資料庫通訊的舊傳統方式。現在,每個即將推出的 PHP 版本都已棄用這種方法。

2. MySQLi 擴充

這僅適用於 MySQL 資料庫,但這是 MySQL 的改進版本。

3. PDO

它適用於各種資料庫。通常,我們認為這是這三種方法中最好的方法。這被認為是一種與 MySQL 資料庫通訊的物件導向的方式。當我們創建連接的那一刻,它給了我們處理MySQL相關的物件。

範例

下面給出了提到的範例:

範例 1 – 使用 MYSQL 進行 PHP MYSQL 連線

代碼:

$servername = "localhost";
$username = "root";
$password = "";
$link = mysql_connect($servername, $username, $password);
if (!$link) {
die('Connection failed: ' . mysql_error());
}else{
echo "Database Connected successfully"; // in case of success
}

低版本PHP可以成功連線。但是,如果我們使用此程式碼,它會顯示 Deprecated: mysql_connect(): MySQL 擴充功能已棄用,並將在將來刪除:使用 mysqli 或 PDO 代替。

這就是為什麼我們應該避免使用這種技術來用 PHP 語言建立 MySQL 資料庫的資料庫連線。

範例 2 – 使用 MYSQLi 的 PHP MYSQL 連線

我們可以透過兩種方式使用 MYSQLi 來連結。

MYSQLi 物件導向。

代碼:

<?php
$servername = "localhost";
$username = "root";
$password = "";
// Database Connection Code
$conn = new mysqli($servername, $username, $password);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error); // in case of error
}else{
echo "Database Connected successfully"; // in case of success
}
?>

現在,我們有了 $conn,資料庫連接物件。我們可以使用該物件進行與資料庫的所有通訊。

代碼:

// selecting database "test1"
mysqli_select_db($conn,"test1");

您也可以在建立連線時將資料庫作為參數傳遞。

代碼:

$conn = new mysqli($servername, $username, $password, $databaseName);

MYSQLi 函數(程式)方式

代碼:

$servername = "localhost";
$username = "root";
$password = "";
// Database Connection Code
$conn = mysqli_connect($servername, $username, $password);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error()); // in case of error
}else{
echo "Database Connected successfully"; // in case of success
}

我們也可以使用上面提到的資料庫連線等其他操作。

範例 3 – PDO PHP 資料庫連線

這又是 PHP 中物件導向的資料庫連結方式。我們可以透過這種方法使用各種類型的資料庫。

代碼:

$servername = "localhost";
$username = "root";
$password = "";
try {
// Database Connection Code
$conn = new PDO("mysql:host=$servername;dbname=test1", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// in case of success
echo "Connected successfully";
}
catch(PDOException $e)
{
// in case of error
echo "Connection failed: " . $e->getMessage();
}

現在的問題是我該使用 MYSQLi 還是 PDO?

這都是使用PHP的物件導向的資料庫連結方式。我們可以將其視為當前和未來的資料庫連接方式。但從這兩者中進行選擇完全取決於您對專案的需求。如果只有MySQL資料庫,可以使用MYSQLi。但當資料庫的可能性改變時,從MySQL到MySQL SERVER或任何其他供應商,PDO將是最好的選擇。這兩種方法都支援在編寫查詢來執行資料庫操作時準備好的語句。準備好的語句是我們可以保護我們的應用程式或資料庫免受 SQL 注入攻擊的一種方法。

結論

所以,你在想什麼。在了解了上述所有 3 種資料庫連接技術之後,我們得出的結論是 PDO 是最好的前進方法。把它放在上面的想法是我們可以使用這個方法來連接,不僅是 MySQL 資料庫,還包括其他資料庫,例如 MySQL Server。我們應該避免使用 mysql_connect() 以確保我們的程式碼持久且面向未來。

以上是PHP 資料庫連接的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn