回答編集履歴
1
本文に追記しました
test
CHANGED
@@ -1,4 +1,22 @@
|
|
1
|
+
入力フォーム側で以下を指定すれば、文字エンコーディングがUTF-8になり、そこから送信されるリクエストもUTF-8になります。通常はこうします。
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
```HTML
|
6
|
+
|
7
|
+
<head>
|
8
|
+
|
9
|
+
<meta charset="UTF-8">
|
10
|
+
|
11
|
+
</head>
|
12
|
+
|
13
|
+
```
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
入力フォームが外部のサイトで、かつそれが不特定であるような場合は文字エンコーディングが不定という状況が稀にあります。おそらくそういう事情ではないと思うのですが、仮にそういうケースであれば、文字エンコーディングを自動判定させることはできます。
|
18
|
+
|
1
|
-
[マニュアル](https://secure.php.net/manual/ja/function.mb-convert-encoding.php)
|
19
|
+
[マニュアル](https://secure.php.net/manual/ja/function.mb-convert-encoding.php)にありますが、文字コードを自動認識させるだけであれば、以下のように書けます。
|
2
20
|
|
3
21
|
|
4
22
|
|
@@ -37,3 +55,7 @@
|
|
37
55
|
mbstring.internal_encoding=utf-8
|
38
56
|
|
39
57
|
```
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
ただ、文字エンコーディングの自動指定はかえって文字エンコーディングの誤判定により文字化けが生じやすいことと、セキュリティ上も若干弱くなるので、文字エンコーディングは固定することをおすすめします。
|