defineのキーに変数使用

defineのキーを変数として取得したい場合があったんだけど、そのまま入れたんじゃ取れなかったので、どうすればいいのかなぁと思ってたらconstantとという関数があった。
以下みたいなことがしたかったので紹介。

define("TEXT_MAX", 100);
$a= "text";
$val = strtoupper($a)."_MAX";
print $val; // "TEXT_MAX"
$val = constant(strtoupper($a)."_MAX");
print $val // "100"

上記のとおり、普通に文字列繋げてTEXT_MAXとかいう値作っただけだと定数が取ってこれない。それをconstant使うと定数の値を取ってこれる。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です