1

データベース (phpmyadmin) にもウェブサイトにも隠し文字が表示されないという問題があります。Web サイトの文字エンコーディングは utf-8 です。「隠し」文字を含む文字列をコピーしてメモ帳に貼り付けると、表示されます。弾丸のキャラクターのように見えますが、隠れています。これはどのタイプの文字で、PHP で削除できますか?

この文字を入力できるユーザーは Mac を使用しており、おそらくドキュメント (おそらく Unicode?) から Web サイトのフォームにコピー/貼り付けを行って保存しています。したがって、この文字は utf-8 エンコーディングでは表示されませんが、文字列をメモ帳ドキュメントにコピーすると表示されます。

これは文字列の末尾にある隠し文字です。弾丸のように見えます:

4

1 に答える 1

2

キャラクターをコピーし、PowerShell を起動して次の操作を行います (はい、複雑です。申し訳ありません)。

'U+{0:X4}'-f+[char]'<PASTE>'

と書かれているところに文字を貼り付けます<PASTE>。その文字の Unicode コード ポイントが表示されます。その後、文字列からそれを削除する何かを書くことができるはずですが、私の目には、RTL マーカーのような楽しいものを除いて、ドキュメント レイアウトを破壊する入力は存在しないはずです。


上記の簡単な説明: [char]'x'1 文字の文字列を char に変換し、+それを数値として扱います ( に似て[int]いますが、より短くなります)。残りは書式文字列と書式演算子-fです。

于 2012-08-31T08:55:20.553 に答える