|
カテゴリ:WEB開発
mysqlの4.1だったか、以前、文字化けで悩んだことがあります。
今回、5.1にバージョンアップするにあたり、my.cnfを見直しました。 これまでは、default-character-setをbinaryに設定していましたが、utf8のアプリケーションしか使わなくなったことから、utf8に変更しました。 すると、PHPで文字化けが発生しました。コンソール等では問題ありません。 utf8に統一しても、PHPのMySQLへのアクセスのデフォルトが、utf8ではないから文字化けするということのようです。 解決策は、set names utf8を実行するようにすることですが、これは、問題のある方法のようでした。 mysql_set_charsetを使うのが良いらしいのですが、これは、PDOでは利用できません。 最終的には、 $pdo = new PDO('mysql:host=localhost;dbname=' . $dbName, $userName, $userPassword, array( PDO::MYSQL_ATTR_READ_DEFAULT_FILE => '/etc/mysql/my.cnf' )); とすることで解決しました。 お気に入りの記事を「いいね!」で応援しよう
Last updated
2012.01.22 10:06:14
コメント(0) | コメントを書く
[WEB開発] カテゴリの最新記事
|