ややこしい比較演算(括弧を使う)
&&と||には優先順位があります。そして()を使って複雑な条件分岐をすることができます。
ティラノwikiより引用です。
( ) を使った比較演算
かつ を使うときは 注意。[if exp="f.flag1 == 1 && f.flag2 == 2 | | f.flag1 == 3"]の場合 f.flag1が1でありf.flag2が2である。 または f.flag1が3となる。
つまりは、最後のかつ | | で判断されやすいので注意すべきではある。
[if exp="f.flag1 == 1 && (f.flag2 == 2 | | f.flag1 == 3)"]の場合 f.flag1が1であり (f.flag2が2 または f.flag1が3)となる。
判定を( )で分けることで回避できるがウッカリすると強固な判定となってしまうのでこれも注意が必要である。
()を使うことで多重if文を一個にまとめることができます。
このへんいつも分からなくなるんですよね…。ティラノで()使えたっけ?みたいにうろ覚えになってしまいます。
wikiにはお世話になっています!