• ベストアンサー

defineの出力先で文字化け

define('○○','<a href="http://www.goo.ne.jp" target="_blank">Goo</a>'); とすると出力先のソースで &lt;a href=&quot;http://www.goo.ne.jp" target=&quot;_blank&quot;&gt;○○&lt;/a&gt; となってしまい <a href="http://www.goo.ne.jp" target="_blank">Goo</a> がそのままの形で表示されてしまいます。 どうしてこうなるのでしょうか。

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

  • ベストアンサー
noname#9414
noname#9414
回答No.1

単にdefineを表示する処理にhtmlspecialchars関数を使用しているために、< が&lt;になっているのではないでしょうか? echoするあたりをチェックしてみてはどうでしょうか? ついでに、これって文字化けではないですよ。htmlspecialcharsの仕様です。

参考URL:
http://www.php.net/htmlspecialchars
iroiro8
質問者

お礼

お返事遅くなってしまいました。ごめんなさい。 ありがとうございます。