• ベストアンサー

PHPでエスケープされた文字列をJavaScriptで元に戻す方法

PHPのhtmlentities()でエスケープされた文字列をJavaScriptで元に戻す方法ってありますか? 例えば、PHPで(' → ')エスケープされたものを、JavaScriptで(' → ')元に戻す方法 「最初から、PHPでエスケープさせなければいいんじゃねーの?」っていうのは無しでお願いします。(汗)

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.5

No3です。 参考に上げたサイトがダウンしているみたいですね。 しばらくすれば直るとは思いますが、お急ぎでしたら、キャッシュを見つけましたので、そちらを替わりに… (7/26のキャッシュなので、もう少ししたら無くなっちゃうかも) http://74.125.153.132/search?q=cache:s1DJ9WTBZJgJ:jsgt.org/ajax/ref/charset_test/responsetext/php/urlencode.php+javascript+%E3%82%A8%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89%E3%80%80PHP&cd=1&hl=ja&ct=clnk ↑はどうも時間がかかるみたいなので、簡略版(テキスト版)ならこちら http://74.125.153.132/search?q=cache:s1DJ9WTBZJgJ:jsgt.org/ajax/ref/charset_test/responsetext/php/urlencode.php+javascript+%E3%82%A8%E3%83%B3%E3%82%B3%E3%83%BC%E3%83%89%E3%80%80PHP&hl=ja&strip=1

becks09
質問者

お礼

参考URLありがとうございます。 http://blog.photoip.net/archives/96 ↑も、貼っていただいたものと、同じこと書いてますね。

その他の回答 (4)

  • petita
  • ベストアンサー率53% (8/15)
回答No.4

while(deci_code.match(/&#(\d+);/)){  deci_code = deci_code.replace(/&#(\d+);/, String.fromCharCode(RegExp.$1)); }

becks09
質問者

お礼

これと同じようなプログラムは書いたのですが、 思うような形では動作はしませんでした。

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.3
回答No.2

.innerHTMLでほうりこんで、それをそれですいだす。ってのは?

becks09
質問者

補足

innerHTMLというのも考えたのですが、 innerHTMLは、標準のメソッドではないので、 あまり使いたくないですねー。 でも、便利なんですけどね。

  • Mizyu
  • ベストアンサー率41% (245/593)
回答No.1

html_entity_decode()という関数があります。

参考URL:
http://www.php.net/manual/ja/function.html-entity-decode.php
becks09
質問者

補足

確かに、ありますね。 しかし、PHPでデコードでは無くて、 JavaScriptなんですよー。

関連するQ&A