首頁 >後端開發 >php教程 >PHP的PDO連接MySQL時如何指定字元集?

PHP的PDO連接MySQL時如何指定字元集?

DDD
DDD原創
2025-01-01 13:31:11487瀏覽

How Do I Specify Character Sets When Connecting to MySQL Using PHP's PDO?

將字元集資訊傳遞給PDO 連線

透過PHP 的PDO(PHP 資料物件)函式庫使用MySQL 連線時,重要的是若要確保正確處理字元集資訊以實現正確的資料處理和顯示。先前版本的 mysql_* 擴充功能提供了兩種常用的指定字元集的方法:mysql_set_charset() 和 mysql_query("SET NAMES 'UTF8'")。

使用 PDO,指定字元集的處理方式有所不同。有兩種方法可用:

  1. 使用字元集DSN 選項:

    • 在PDO 連接中包含字元集選項string 指定字元集。例如:

      $connect = new PDO("mysql:host=$host;dbname=$db;charset=utf8mb4", $user, $pass, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION));
  2. 使用exec() 方法(適用於5.3.6 之前的PHP 版本):

    $dbh = new PDO("mysql:host=$host;dbname=$db", $user, $password); $dbh->exec("set names utf8mb4");

在5.3.6 之前的PHP版本中,可以設定建立PDO 連線後使用exec() 方法設定的字元集:需要注意的是,預設情況下,PDO不會自動設定字符集。因此,建議始終使用上述方法之一指定字元集,以確保正確處理和顯示資料。

以上是PHP的PDO連接MySQL時如何指定字元集?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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