【實例分享】PHP PDO操作資料庫(增刪改查)

PHPz
發布: 2023-03-27 15:56:12
原創
738 人瀏覽過

PHP PDO 是 PHP 的一種擴展,它為 PHP 開發者提供了一種操作資料庫的標準化方式,可以讓開發者在不同的資料庫之間進行無縫切換。本文將示範如何使用 PHP PDO 連線 MySQL 資料庫,並撰寫增刪改查程式碼的實例。

安裝 PDO 擴充功能

在開始之前,請確保你的 PHP 環境中已經安裝了 PDO 擴充功能。可以透過在終端機執行以下命令來檢查目前環境中是否已經安裝了 PDO。

php -m | grep pdo
登入後複製

如果沒有提示任何錯誤訊息,那麼就表示 PDO 已經安裝成功。如果提示沒有找到 PDO 擴展,請根據你的作業系統和 PHP 版本安裝對應版本的 PDO。

連接 MySQL 資料庫

在示範之前,我們首先需要在本機上建立一個 MySQL 資料庫,並新建一個名為 test 的資料表。同時,為了連接資料庫,我們需要準備好連接所必需的信息,例如資料庫名稱、使用者名稱、密碼等。連接程式碼如下:

$dbname = 'test';
$username = 'root';
$password = '';
$dsn = "mysql:host=localhost;dbname=$dbname;charset=utf8";

try {
  $pdo = new PDO($dsn, $username, $password);
  echo "连接成功";
} catch(PDOException $e) {
  echo $e->getMessage();
}
登入後複製

說明:

  • dbname 是資料庫名稱,可依實際情況修改;
  • usernamepassword 是存取資料庫的使用者名稱和密碼,根據實際情況進行修改;
  • dsn 是PDO 連接MySQL 資料庫所必需的參數,其中mysql:host=localhost 是MySQL 的主機名,dbname=$dbname 是資料庫名稱,charset=utf8 是字元集,確保我們的資料在傳輸過程中不會出現亂碼的狀況。

如果連線成功,頁面將會輸出「連線成功」。

取得資料

接下來,我們將示範如何使用 PDO 取得資料庫中的資料。程式碼如下:

$sql = "SELECT * FROM test";
$stmt = $pdo->query($sql);

while ($row = $stmt->fetch()) {
  echo $row['id'] . ' ' . $row['name'] . ' ' . $row['age'] . "<br>";
}
登入後複製

說明:

  • SELECT * FROM test 是SQL語句,其中test是我們建立的資料表名;
  • #$stmt 是PDO 執行SQL 語句後傳回的結果集物件;
  • $stmt->fetch() 用來取得結果集中的一條數據,每次執行完該方法後,$stmt 中將指向下一筆資料;
  • while 迴圈用於遍歷所有符合條件的資料記錄,直到結果集中沒有數據為止。

新增資料

接下來,我們將示範如何使用 PDO 向資料庫中新增資料。程式碼如下:

$name = 'Tom';
$age = 28;
$sql = "INSERT INTO test(name,age) VALUES(:name,:age)";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':name', $name);
$stmt->bindValue(':age', $age);
$result = $stmt->execute();

if ($result) {
  echo "数据插入成功";
} else {
  echo "数据插入失败";
}
登入後複製

說明:

  • INSERT INTO 是SQL 語句,用於在資料表中插入新的資料;
  • :name:age 是PDO 參數綁定的佔位符,將在後面的程式碼中被替換成真正的值;
  • $ pdo->prepare($sql) 用來為SQL 語句預處理,這裡的$sql 就是要執行的SQL 語句;
  • ##$stmt-> ;bindValue(':name', $name) 將佔位符:name 結合到具體的值$name;
  • $result = $stmt->execute() 執行SQL 語句,並將執行結果傳回。

更新資料

接下來,我們將示範如何使用 PDO 更新資料庫中的資料。程式碼如下:

$id = 1;
$name = 'John';
$age = 30;
$sql = "UPDATE test SET name=:name,age=:age WHERE id=:id";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':name', $name);
$stmt->bindValue(':age', $age);
$stmt->bindValue(':id', $id);
$result = $stmt->execute();

if ($result) {
  echo "数据更新成功";
} else {
  echo "数据更新失败";
}
登入後複製
說明:

  • UPDATE 是SQL 語句,用於更新資料表中的資料;
  • SET name=:name,age=:age 表示要更新的欄位和對應的值;
  • WHERE id=:id 表示要更新的資料的條件;
  • $stmt->bindValue(':id', $id) 將佔位符:id 綁定到具體的值$id

刪除資料

最後,我們將示範如何使用 PDO 刪除資料庫中的資料。程式碼如下:

$id = 1;
$sql = "DELETE FROM test WHERE id=:id";
$stmt = $pdo->prepare($sql);
$stmt->bindValue(':id', $id);
$result = $stmt->execute();

if ($result) {
  echo "数据删除成功";
} else {
  echo "数据删除失败";
}
登入後複製
說明:

  • DELETE FROM 是SQL 語句,用於從資料表中刪除資料;
  • #WHERE id=:id 表示要刪除的資料的條件;
  • $stmt->bindValue(':id', $id) 將佔位符:id 綁定到具體的值$id

總結

以上就是使用 PHP PDO 操作 MySQL 資料庫的增、刪、改、查實例。相信透過這些例子,大家已經掌握了使用 PDO 連接資料庫,並對資料進行相關操作的方法。在實際的專案中,還可以結合其他的 PHP 框架和元件來快速開發一些複雜的業務邏輯。

以上是【實例分享】PHP PDO操作資料庫(增刪改查)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板