這篇文章主要介紹了PHP使用PDO操作資料庫的亂碼問題解決方法,實例分析了編碼設定及屬性設定解決亂碼問題的實現技巧,需要的朋友可以參考下
當使用PDO連接操作資料庫的時候,有時會出現:儲存在資料庫中的漢字為亂碼。以檔案為UTF-8 格式,其解決方法如下:
(1)實例化的物件直接執行query() 方法或exec() 方法:
<?php class DB { static public function getDB() { try { $_opts_values = array(PDO::ATTR_PERSISTENT=>true,PDO::ATTR_ERRMODE=>2); $_pdo = new PDO(DB_DSN, DB_NAME, DB_PASS, $_opts_values); } catch (PDOException $e) { exit('数据库连接错误!错误信息:'.$e->getMessage()); } $_pdo->query("SET NAMES utf8"); // $_pdo->exec('SET NAMES utf8'); //设置数据库编码,两种方法都可以 return $_pdo; } } ?>
(2)在實例化PDO 的第四個參數加入MYSQL_ATTR_INIT_COMMAND 屬性:
<?php class DB { static public function getDB() { try { $_opts_values = array(PDO::ATTR_PERSISTENT=>true,PDO::ATTR_ERRMODE=>2,PDO::MYSQL_ATTR_INIT_COMMAND=>'SET NAMES utf8'); $_pdo = new PDO(DB_DSN, DB_NAME, DB_PASS, $_opts_values); } catch (PDOException $e) { exit('数据库连接错误!错误信息:'.$e->getMessage()); } return $_pdo; } } ?>
總結:以上就是本篇文的全部內容,希望對大家的學習有所幫助。
相關推薦:
############################################################### #######
以上是PHP使用PDO操作資料庫亂碼問題的解決方法及實例的詳細內容。更多資訊請關注PHP中文網其他相關文章!