回答編集履歴
3
追記
answer
CHANGED
@@ -2,4 +2,17 @@
|
|
2
2
|
|
3
3
|
Shift_JIS に含まれていない文字は不可能です。質問者さんの言う「機種依存文字」は Shift_JIS に含まれてないのでは? (ただし、質問のコードにある「文字列」という文字は Shift_JIS に含まれるので変換できるはずですが・・・)
|
4
4
|
|
5
|
-
OS が Windows なら付属の IME パッドを使って Unicode に含まれる文字と Shift_JIS に含まれる文字を比較して見るといろいろ分かると思います。
|
5
|
+
OS が Windows なら付属の IME パッドを使って Unicode に含まれる文字と Shift_JIS に含まれる文字を比較して見るといろいろ分かると思います。
|
6
|
+
|
7
|
+
**【追記】**
|
8
|
+
|
9
|
+
> 例えば文字列の中に①という機種依存文字が含まれている場合
|
10
|
+
|
11
|
+
以下の記事に "CP932 コードマップを使用するには、代わりに SJIS-WIN を使用してください。" とありました。
|
12
|
+
|
13
|
+
サポートされるエンコーディングの概要
|
14
|
+
[https://www.php.net/manual/ja/mbstring.encodings.php](https://www.php.net/manual/ja/mbstring.encodings.php)
|
15
|
+
|
16
|
+
CP932 は Microsoft の独自拡張版 Shift_JIS で IME パッドで表示されるのはそれです。① は CP932 に含まれますが独自拡張部分です。
|
17
|
+
|
18
|
+
でも、質問者さんの環境では独自拡張部分はサポートされてなくて、結果 ① は「?」となってしまうということなんでしょうか?
|
2
追記&訂正
answer
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
> UTF-8→SJISで文字化けせずに変換する方法はないのでしょうか?
|
2
2
|
|
3
|
-
Shift_JIS に含まれていない文字
|
3
|
+
Shift_JIS に含まれていない文字は不可能です。質問者さんの言う「機種依存文字」は Shift_JIS に含まれてないのでは? (ただし、質問のコードにある「文字列」という文字は Shift_JIS に含まれるので変換できるはずですが・・・)
|
4
4
|
|
5
5
|
OS が Windows なら付属の IME パッドを使って Unicode に含まれる文字と Shift_JIS に含まれる文字を比較して見るといろいろ分かると思います。
|
1
追記
answer
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
> UTF-8→SJISで文字化けせずに変換する方法はないのでしょうか?
|
2
2
|
|
3
|
-
Shift_JIS に含まれていない文字以外は不可能です。
|
3
|
+
Shift_JIS に含まれていない文字以外は不可能です。ただし、「文字列」という文字は Shift_JIS に含まれるので変換できるはずですが・・・
|
4
4
|
|
5
5
|
OS が Windows なら付属の IME パッドを使って Unicode に含まれる文字と Shift_JIS に含まれる文字を比較して見るといろいろ分かると思います。
|