2017年4月30日

変数名を動的に指定する「可変変数」

変数の値を指定して出力するといった事はPHPの第一歩のような内容ですが、変数名を動的に指定する「可変変数」ものがあります。例えばこのような感じ。

$text = "labo";
echo $text;
//「labo」が出力されます。
$$text = "web";
echo $labo;
//「web」が出力されます。

「$」を2つ付ける事で、変数名を指定できます。例ではまず $text に 「labo」という値が入り、 $$text は $labo としての扱いができます。
なので、 $$text = “web”; とする事で、 $labo に「web」という値が入る事になります。
echo ${$text};
この記述でも「web」が出力されます。
また、可変変数 $$text に配列を使用したい場合は $$text[1] ではなく、 ${$text[1]} という記述となります。まとめると、このような感じ。

$text = "labo";
echo $text;
$$text = "web";
echo $labo;
echo ${$text};
//「labo」「web」「web」が出力されます。

以上、変数名を動的に指定する「可変変数」でした。

コメントを残す

メールアドレスが公開されることはありません。