utf8_unicode_ci 文字列を含むデータベースがあります。いくつかの例は、「Zìzhìqū」と「Shěng」です。
このコードを実行すると:
$result = mysql_query ("SELECT foo FROM bar");
$rows = Array ();
while ($row = mysql_fetch_row ($result))
array_push ($rows, $row [0]);
mysql_free_result ($result);
配列には、$rows
予想される場所に "Zìzhìqū" が含まれていますが、"Shěng" が "Sh?ng" になっています。文字列をファイルに書き込むと、不正な疑問符が通常の ASCII 0x3f であることがわかります。
なんてこと?
PHP 5.3.10-1ubuntu3.4 と mysql Ver 14.14 Distrib 5.5.24 を使用しています。これの原因は何ですか?