[PHP]定数名や変数名を動的に指定する

連番ファイル名の定数や変数を for で処理したいときなど、
動的に定数名や変数名を指定したいときがある。
そのときは以下にて。メモメモ。。

■定数を動的に指定する
constant関数使います。

PHP: constant – Manual
http://jp.php.net/manual/ja/function.constant.php

定数で無いとき、NULLを返す関数です。
↓のような感じで使えそうかなー。

//「_CONST0」~「_CONST9」まで、もし定数で存在したら出力
for($i = 0; $i < 9; $i++) {
if(constant(constant(“_CONST” . $i)) {
echo(constant(“_CONST” . $i));
}
}

■変数を動的に指定する
可変変数を使います。

PHP: 可変変数 – Manual
http://jp.php.net/manual/ja/language.variables.variable.php

$a = ‘hello’;
$$a = ‘world’;

としたとき、

echo “$a”;
echo “${$a}”;
echo “$hello”;

は同じだそうですー。

タグ: