eval

属性名必須デフォルト概要
varmixedYesn/a評価される変数(又は文字列)
assignstringNon/a出力が割り当てられるテンプレート変数

与えられた変数をテンプレートとして評価します。テンプレート変数又はテンプレートタグを変数や設定ファイル内に埋め込むような用途に使われます。

assign属性が指定されると、evalの出力はテンプレート変数に割り当てられます。

テクニカルノート: 評価される変数はテンプレートと同じようにエスケープやセキュリティ機能に従います。

テクニカルノート: 評価される変数はリクエスト毎にコンパイルされるので、コンパイルされた形式では保存されません。ですが、キャッシュが有効に設定されている場合は、残りのテンプレートの出力に関してはキャッシュされます。

例 8-4. eval

setup.conf
----------

emphstart = <b>
emphend = </b>
title = Welcome to {$company}'s home page!
ErrorCity = You must supply a {#emphstart#}city{#emphend#}.
ErrorState = You must supply a {#emphstart#}state{#emphend#}.


index.tpl
---------

{config_load file="setup.conf"}

{eval var=$foo}
{eval var=#title#}
{eval var=#ErrorCity#}
{eval var=#ErrorState# assign="state_error"}
{$state_error}

出力:

This is the contents of foo.
Welcome to Foobar Pub & Grill's home page!
You must supply a <b>city</b>.
You must supply a <b>state</b>.