45式::雑記
45式::雑記は、日々の事を記してないから日記ではなく雑記です。

MTSetVarsタグ内で一行に複数個の=(イコール)があった場合はどうなるか

コメント
0件
トラックバック
0件

(この記事は最後の一文だけに価値があり、それを改めて認識するための酷い所業が最後の一文を除くものです)

MTSetVarsタグの基本書式は以下のようになります。

<MTSetVars>
takizawa=akira
</MTSetVars>

変数名=値という形で行います。
さて、それでは=が二つあった場合はどうなるのでしょうか。

<MTSetVars>
amakusa=shirou=tokisada
</MTSetVars>

上記でエラーは発生しませんでした。
しかし、変数名がわからない事には変数として役に立ちません。
そこで想定される変数名で試した所、判明しました。

<$MTGetVar name="amakusa=shirou"$>
<$MTGetVar name="amakusa"$>

shirou=tokisada

何の事はなく、変数名はamakusaとして処理されていました。

という訳で、MTSetVarsタグ内で一行に=が複数合っても何か起こるということはないのでご安心下さい。

=を変数名に使う方法

MTSetVarsタグ内で変数名に=を使う事はできませんでした。
しかし、=を変数名に使う方法はあります。

<$MTSetVar name="x=y" value="z"$>

このようにMTSetVarタグ、MTSetVarBlockタグ、MTSetVarTemplateタグ、setvarモディファイアでは使えます。
ただし、=を含む変数は属性内で呼び出す場合の$nameという形では動作しません。
なので=を変数名に含める事はおすすめしません。

やはり変数名は英字、数字、_(アンダースコア)のみの構成が最良だ。

コメント[0]

コメントはまだありません。

コメント投稿フォーム

コメントを投稿するにはJavaScirptが必要です。ブラウザのJavaScriptを有効にしてください。

コメント投稿フォーム

トラックバック[0]

トラックバックはまだありません。

カテゴリ
アーカイブ
ヘルプ
Feed

フィードとは