使用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中文網其他相關文章!