首頁 >資料庫 >mysql教程 >如何用PDO取代MySQL函數進行資料庫連線?

如何用PDO取代MySQL函數進行資料庫連線?

Susan Sarandon
Susan Sarandon原創
2025-01-10 10:40:41609瀏覽

How to Replace MySQL Functions with PDO for Database Connections?

從MySQL函數移轉到PDO資料庫連線

引言

隨著MySQL函數的棄用,轉向PDO等替代方法進行資料庫連接至關重要。本文將提供一個全面的指南,介紹如何在MySQL和MSSQL中實現PDO。

前提條件

MySQL:

  • PHP模組 php_pdo_mysql.dll

MSSQL:

  • PHP驅動程式 php_pdo_sqlsrv_##_ts.dll 或 php_pdo_sqlsrv_##_nts.dll

建立PDO連線

<code class="language-php">$connection = new PDO($dsn, $user, $password);</code>

使用PDO查詢

預處理語句:

  • 使用prepare()建立預處理語句。
  • 使用bindValue()或bindParam()將值綁定到佔位符。
  • 使用execute()執行語句。

取得結果:

  • 使用fetch()取得單行結果。
  • 使用fetchAll()取得所有行結果。

PDO連線範例類別

<code class="language-php">class Database {
    protected $connection;

    public function __construct($dsn, $username, $password) {
        $this->connection = new PDO($dsn, $username, $password);
    }

    public function query($SQL) {
        return $this->connection->query($SQL);
    }

    public function prepare($SQL, $params = []) {
        $stmt = $this->connection->prepare($SQL);
        $stmt->execute($params);
        return $stmt;
    }
}</code>

使用方法範例

<code class="language-php">$db = new Database($dsn, $username, $password);
$result = $db->prepare('SELECT * FROM users WHERE username = :username', ['username' => 'john']);

while ($row = $result->fetch()) {
    echo $row['id'] . ' ' . $row['name'] . '<br></br>';
}</code>

以上是如何用PDO取代MySQL函數進行資料庫連線?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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