2017-07-12 5 views
0

私のPHPコードは正しく私のPHPコードは、それを受信し、適切に自分のWebエディタで絵文字を表示している私のjsのコードにこの文字列を渡している絵文字JSからPHPへの絵文字のユニコードを正しく取り戻すにはどうすればよいですか?

$text = <div>test 1<span>&#x1f607</span></div> 

を表示するために次の文字列を生成しています。

私のjsのコードの中で、私は(ユニコードは仕様変更されていない注意してください)PHPに返される文字列は次のようになりますことを、テキストを変更することができます。

$text = <div>test 2<span>&#x1f607</span></div> 

バックの文字列を渡すにはPHPに私は、次のやっている:

var send_form = $('#send_msg_form').serializeArray(); 
send_form.push({ name: "msg_text", value: msg_text }); 

私のPHPコードが正しくデータを受信して​​いると私は、着信PARMSからMSG_TEXTを得ることができています。

問題は、私はもはやPHPの文字列var内のユニコードを見ていないということです。これは、JSがプッシュするときやPHPがデータを受け取ったときに起こっているユニコードの翻訳のためであると思われる象徴です。

私はPHPから文字列を引くと、エディタに貼り付けた場合、私は以下を参照してくださいと、p後3逆さまに疑問符があります。私は明らかに通過に関して何かが欠けています

<div>test 1<span>p</span></div> 

は、ユニコードをjsからphpに変換します。私は次に何をすべきかはわかりません。私は現在、PHP 5.6を実行しています。どんな助けでも大歓迎です。

+0

* "私のPHPコードが正しくデータを受信して​​います" * - あなたはサーバ上で正確に "'&#x1f607' "を受け取っています...? - * "PHPから文字列を引き出す" * - あなたはどのようにそれをやっていますか? - ここでは「ネイティブ」Unicode文字は絶対にないので、ASCII HTMLエンティティのみがエンコードの問題を起こすべきではありません。 – deceze

答えて

-1

JSコードがエンコードされたUTF-8の笑顔をPHPコードに渡しているようです。

&#x1f607 - 絵文字のコードです。

私は(情報の不足のために)PHP側でエンコードされた文字列を取得すると仮定します。あなたがコーディングに関連絵文字を表示したい場合は

ですから、機能html_entity_decodeでそれをデコードすることができますで終わらなければなりませんエンティティをエンコード

html_entity_decode('&#x1f607;'); 

注意「;」シンボル(私は同じことがJSエディタに当てはまるはずだと思います)。

+0

もう1つ注意してください:通常、あなたはPHP側でそのようなシンボルをデコードしていないので、おそらくJSエディタやJSエディタにデータを送る形式でJSエディタに問題があります(JSエディタに絵文字を送るとどうなりますか? ) – SeRRgIO

+0

多分、私は問題を十分に正確に記述していないかもしれません。 – Tim

関連する問題