dポイントプレゼントキャンペーン実施中!

言語:php
フレームワーク:ethna

現在DBから取り出したtext型のデータをブラウザに出力したいと考えています。

その際抜き出したデータ、数箇所改行されているものです。

-----------
こんにちは!

明日も頑張りましょう!

では。
-----------

データ取り出しの際に「str_replace」や「nl2br」を使用して、「\r\n」を「<br>」に変換してみたのですが、実際にそのデータをテンプレート側で出力した際に、

『こんにちは!<br>明日も頑張りましょう!<br>では。』となってしまいます。


ちなみに出力方法はテンプレートで下記のように記述しています。
この中には先ほどのデータが入っています。
{$app.text}

<br>が表示されているということで、変換はうまくいっていると思うのですが、文字列として表示されてしまい困っています。

どなたか解決方法をご存知の方がいらっしゃいましたら、どうぞ宜しくお願い致します。

A 回答 (2件)

Ethnaは$appなどの変数を展開するときにhtmlspecialcharsするようです(ある意味当然か・・・)。


http://www.ethna.jp/%C0%B0%B7%C1%A5%EB%A1%BC%A5% …

&br;に置換してもダメでしたか?
http://www.ethna.jp/%C0%B0%B7%C1%A5%EB%A1%BC%A5% …

この回答への補足

&br;も試してはいたのですが、同じく文字列として表示されるだけでした。
同じく&amp;br;もダメでした。

補足日時:2012/05/18 10:14
    • good
    • 0
この回答へのお礼

解決しました!

shimix様のおっしゃっていた通り、Ethnaは$appが自動でhtmlspecialcharsしてくれていたので、ただの文字列となって表示されてしまったようです。

データの受け渡しの際に、setAppNeというものを仕様するとエスケープされずに送信出来たので、無事に処理することが出来ました!ありがとうございます!

お礼日時:2012/05/18 11:19

<BR>ではなく、<BR/>では・・・?

この回答への補足

<br><br/><br />これらも試してはいたのですが、全て同じく文字列として処理されます・・・。

補足日時:2012/05/18 10:16
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!