PHPUtilプラグイン(その7・配列の利用)

Movable Type標準のMTSetVarタグ/MTSetVarBlockタグでは、配列変数を扱う機能があります。
PHPUtilプラグインでは、それと同様の書き方で、PHPの配列変数を使うことができます。

1.配列への代入

MTPHPSetVarタグ/MTPHPSetVarBlockタグで、配列に値を代入することができます。
Movable Type標準のMTSetVarタグと同様に、indexモディファイアを指定するか、「name="配列名[番号]"」の書き方で、代入先の要素を指定します。

・indexモディファイアで番号を指定する

<$mt:PHPSetVar name="配列名" index="番号" value="値"$>
<mt:PHPSetVarBlock name="配列名" index="番号">
  ・・・(各種の処理)・・・
</mt:PHPSetVarBlock>

・nameモディファイアで番号を指定する

<$mt:PHPSetVar name="配列名[番号]" value="値"$>
<mt:PHPSetVarBlock name="配列名[番号]">
  ・・・(各種の処理)・・・
</mt:PHPSetVarBlock>

例えば、「messages」という配列の1番の要素に、「Hello, world」の文字列を代入したいとします。
この場合、以下のどちらかの書き方をします。

<$mt:PHPSetVar name="messages" index="1" value="Hello, world"$>
<$mt:PHPSetVar name="messages[1]" value="Hello, world"$>

2.配列の要素での計算

MTPHPSetVar/MTPHPSetVarBlockタグにopモディファイアを指定して、配列の要素に対する計算を行うことができます。
opモディファイアの書き方は、一般の変数の場合と同じです。

例えば、「data」という配列変数の1番の要素に100を足すには、以下のような書き方をします。

<$mt:PHPSetVar name="data" index="1" op="+" value="100"$>

上記の例で、indexモディファイアを使わずに、「name="data[1]"」と書くこともできます。
また、opモディファイアを「op="add"」と書くこともできます。

3.配列の要素の出力

配列の要素を出力するには、MTPHPGetVarタグを使います。
MTPHPSetVarタグと同様に、要素の番号はindexモディファイアで指定するか、nameモディファイアで指定します。

・indexモディファイアで番号を指定する

<$mt:PHPGetVar name="配列名" index="番号"$>

・nameモディファイアで番号を指定する

<$mt:PHPGetVar name="配列名[番号]"$>

例えば、配列messasgesの1番の要素を出力するには、以下のどちらかの書き方をします。

<$mt:PHPGetVar name="messages" index="1"$>
<$mt:PHPGetVar name="messages[1]"$>

4.PHPUtilプラグイン関係の記事の一覧

PHPUtil関係のその他の記事は、以下のリンクから参照できます。