ホームページ >データベース >mysql チュートリアル >PHP PDO 接続で文字エンコーディングを設定するにはどうすればよいですか?

PHP PDO 接続で文字エンコーディングを設定するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-13 14:07:12147ブラウズ

How Do I Set Character Encoding in PHP PDO Connections?

PHP PDO: 文字エンコーディング

以前は、MySQL_* 接続では、通常、文字エンコーディングは mysql_set_charset() および mysql_query() を使用して設定されていました。ただし、これらの関数は PDO 接続には適用できません。

PDO 接続文字列

PDO の場合、接続文字列自体の中で文字エンコーディングを指定できます。 charset 属性の後に目的の文字セットを追加します。例:

"mysql:host=$host;dbname=$db;charset=utf8mb4"

5.3.6 より前の PHP バージョン

5.3.6 より前の PHP バージョンの場合、接続文字列の charset 属性が無視されました。これらのバージョンで文字エンコードを設定するには、次の方法を使用できます。

$dbh = new PDO("mysql:host=$host;dbname=$db", $user, $password);
$dbh->exec("set names utf8mb4");

これにより、PDO 接続に文字エンコードが設定され、文字データを適切に処理できるようになります。

以上がPHP PDO 接続で文字エンコーディングを設定するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。