アプリ版:「スタンプのみでお礼する」機能のリリースについて

----------
000
{if $a = $a}aaa{/if}
111
----------
というテンプレートファイルを実行した場合に、
吐き出されるソースが
----------
000aaa111
----------
となっています。



----------
000
{if $a = $a}
aaa
{/if}
111
----------
としないで吐き出されるソースを
----------
000
aaa
111
----------
とする方法はないでしょうか?


ブラウザに表示される内容ではなく、あくまでソースです。
よろしくお願いします。

A 回答 (4件)

未確認ですが、




000
{if $a = $a}\naaa\n{/if}
111

としてみはどうでしょう?


ちなみにif文の
if $a = $a
というのは、
if $a == $a
の間違いではないのでしょうか?

参考URL:http://sunset.freespace.jp/smarty/SmartyManual_2 …

この回答への補足

>000
>{if $a = $a}\naaa\n{/if}
>111

\nを入れるとソースでも\nがそのまま表示されています。
改行コードとは認識していないようです。

>if $a = $a
すいません。
タイポでした。

補足日時:2007/10/01 16:12
    • good
    • 0

テンプレートの文字(改行)コードは何?

この回答への補足

phpファイル、tplファイルともに文字コードはEUC、改行コードはLFにしています。

補足日時:2007/10/02 10:22
    • good
    • 0

ん~、では他にも方法があるかもしれませんが、とりあえず目的を達成するために



{if $a == $a}{php} echo "\naaa\n";{/php}{/if}

でいけると思います。



参考URLはSmartyドキュメントです。

参考URL:http://smarty.php.net/manual/ja/
    • good
    • 0
この回答へのお礼

ありがとうございました。
$securityをfalseにする必要がありましたが、
実現はできました。

もうしばらく別の解決法を募集したいと思います。

お礼日時:2007/10/02 12:16

>phpファイル、tplファイルともに文字コードはEUC、改行コードはLFにしています。


まさかと思うけど出力されたHTMLのソースをメモ帳などのEUCコード(開業コード→\n)で見ているなんてことないですよね?

この回答への補足

意味が良く分からないのですが、
HTMLソースを開き、改行コードを調べるとCRLFになっていました。
phpファイルやtplファイルはLFなのになぜでしょう?
開発環境がWindows+XAMPPだからでしょうか?

また
{php}echo "\n";{/php}
を挿入しないで1行として表示された箇所のソースを調べても
LFだけの改行コードが挿入されている痕跡はありませんでした。

補足日時:2007/10/02 14:42
    • good
    • 0

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