2011-09-10 13 views
0

私は、変数名がDynamicであるsmartyでCodeIgniter関数の1つを使用しようとしています。
smarty/codeigniterの評価

正常に機能は次のように呼び出されます。

{set_value(aaa, $f_aaa} <br> 

が、私のコードのAAAで
は、動的な値に置き換えられ

最初の部分は簡単です:

{set_value($row->Field, $f_aaa} <br> 

が、私はこのような状況のために賢明にevalを使う方法を知らない。

それは編集(次の入力/変数とEX)ループで

{set_value(name, $f_name} 

{set_value(address, $f_address} 

を関数を呼び出す必要があります。私はPHPのネイティブeval機能はSmartyの内部の作業をされていないと言うのを忘れて...それは次のエラーを示しています:

unknown function "eval"' 
+3

なぜsmartyを使用していますか?通常のCIビューを使用するだけで、この 'eval()'サルビジネスなしでまっすぐなPHPコードを使うことができます。また、読みやすさにほとんど影響を与えずに、処理速度も向上します。 – NullUserException

+0

私はあなたが正しいと思う:(:) – user861587

答えて

4

evalは関数ではありません - それは言語構造であり、Smartyのは、通常の関数を呼び出している方法を呼び出すことはできません。

0

は、それはあなたの任意のCIヘルパーを呼び出す機能をあげるあなたは{php} tag.

1

を使用しますが、Smartyの内部のCIヘルパーを使用したい場合は、このSmartyのプラグインを見てみましょう

https://github.com/fadillzzz/Smarty-CI-Helper/

を持っていますSmarty構文を使用したSmartyテンプレートの関数