MySQLは、connectionと呼ばれるものへの文字セット変換をその場で実行します文字セット 。この文字セットは、SQLステートメントを使用して指定できます
SET NAMES utf8
または、 mysql_set_charset() などの特定のAPI関数を使用します :
mysql_set_charset("utf8", $conn);
これが正しく行われていれば、utf8_encode()やutf8_decode()などの関数を使用する必要はありません。
また、ブラウザが同じエンコーディングを使用していることを確認する必要があります。これは通常、単純なヘッダーを使用して行われます:
header('Content-type: text/html;charset=utf-8');
(文字セットは utf-8と呼ばれることに注意してください ブラウザではありますが、 utf8 MySQLで。)
ほとんどの場合、接続文字セットとWeb文字セットだけを追跡する必要があるため、それでも機能しない場合は、他に何か問題がある可能性があります。少し試してみてください。通常、完全に理解するには時間がかかります。