首頁  >  文章  >  資料庫  >  如何使用 PDO 和 MySQL 修復損壞的 UTF-8 編碼?

如何使用 PDO 和 MySQL 修復損壞的 UTF-8 編碼?

Linda Hamilton
Linda Hamilton原創
2024-11-03 19:23:29538瀏覽

How to Fix Broken UTF-8 Encoding with PDO and MySQL?

使用PDO 和MySQL 修復損壞的UTF-8 編碼

在PHP 中將PDO 與MyMyUTF- 8 編碼資料常會導致資料庫出現亂碼或問號。這可能是一個令人沮喪的問題,尤其是在處理阿拉伯語等語言時。

要解決此問題,只需從一開始就將 MySQL 連線設定為使用 UTF-8 編碼即可。具體方法如下:

PHP 程式碼:

<code class="php">$pdo = new PDO(
    'mysql:host=hostname;dbname=defaultDbName',
    'username',
    'password',
    array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8")
);</code>

警告: 此解僅適用於 PHP 版本 5.3.5及以下。有關 PHP 版本 5.3.6 及更高版本,請參閱原​​始執行緒上提供的替代答案。

透過將初始命令設定為“SET NAMES utf8”,PDO 在建立連線後會自動將此查詢傳送到伺服器,確保所有後續查詢都使用 UTF-8 編碼。這樣就無需在建立連線後進行額外的 SET NAMES 或 SET CHARACTER SET 查詢。

以上是如何使用 PDO 和 MySQL 修復損壞的 UTF-8 編碼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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