簡単な質問: PHP の入力パラメーターのエンコーディングは何ですか? つまり、GET、POST などです。
いくつかのテストを実行すると、おそらく UTF-8 でエンコードされていることがわかりました。これは本当ですか?
それらはエンコーディングブラウザにあり、それらを送信します。たとえば、ページのメタ文字セットやフォームのaccept-charsetなどのエンコーディングを使用するようにブラウザに提案できます(また、そうすべきです)。
<form action="form_action.php" accept-charset="UTF-8">
しかし、それを強制することはできません。ただし、必要に応じて、提案したエンコーディングに含まれていないすべての入力データを除外することもできます。
これはPHPに固有のものではありませんが、一般的に適用されます。
HTTP リクエストで送信された内容に完全に依存します。ブラウザーが UTF-8 でエンコードされたデータを送信する場合、それが PHP から読み取られます。