MySQL データベースを使用するアプリを開発しています。データベースには、クライアント側にエンコードできない特定の文字が含まれており、それらの値が null であることがわかりました。同様に、特殊文字を含む文字列は、クライアント側で null として表されます。
データベースのデフォルトの文字セットが であることがわかりました。すべてのテーブルとそれらのテーブルの個々の列を含めlatin1
て、 に変更しました。utf-8
また、私の中でpdo_construct
、文字セットがutf-8であると述べましたが、
$db = new PDO('mysql:dbname=$dbname;host=$dbhost;charset=utf8',$dbname,$dbhost);
また、utf-8 文字セットを使用するように応答ヘッダーを構成しました。しかし、文字はまだエンコードされていません.特殊文字が存在する場合、私はまだヌル文字列を取得しています.
デフォルトの文字セットを設定して my.ini ファイルの構成を変更しようとしましたが、PDO コンストラクトで接続ファイルにエラーが発生しました。
これを修正することが急務です!誰か助けてくれませんか?