私はSmartyの初心者です。smartyの配列要素に対してmod操作を実行したい。以下は、私が実装しようとしているコードスニペットです。
{if {$que_seq_no}.{$sub_ques_no+1} % 10 == 1}
それを修正するのを手伝ってくれませんか。前もって感謝します。
私はSmartyの初心者です。smartyの配列要素に対してmod操作を実行したい。以下は、私が実装しようとしているコードスニペットです。
{if {$que_seq_no}.{$sub_ques_no+1} % 10 == 1}
それを修正するのを手伝ってくれませんか。前もって感謝します。
mod操作に受け入れ可能な構文を使用しています。変数で間違った構文を使用していると確信しています{$que_seq_no}.{$sub_ques_no+1}
。試しました$que_seq_no[$sub_ques_no+1]
か?
モジュロ演算子は%
、交互になりmod
ます。
smartyで認識されている修飾子の詳細については、ドキュメントを参照してください:http ://www.smarty.net/docsv2/en/language.function.if
したがって、ご存知のように、モジュロ演算子は正しいです。
あなたの構文から私が推測できることから、あなたはおそらく配列インデックスによって配列の値にアクセスしようとしています。
配列アイテムにアクセスするには、次の2つの可能性があります。
$arrayVariable.key
$arrayVariable[index]
インデックスは整数です)$que_seq_no[$sub_ques_no+1]
オブジェクトプロパティにアクセスしようとしている場合:
配列キーによるアクセスに似ていますが、演算子は次の->
ようになります。構文は次のとおりです。$objectVariable->propertyName
このsmartyドキュメントの詳細については、http ://www.smarty.net/docsv2/en/language.variables.tplを参照してください。
{}
(中括弧)
の使用法に少し混乱したと思います
-それらはスマートな表現全体{
をラップするために使用されます-それから、それらは他のまたはを含むことができないことを意味します}
。
smartyドキュメントから抜粋したかなりの例は次のとおりです。
{if $name == 'Fred' || $name == 'Wilma'}
...
{/if}