3

define()を使用して定義された変数があります。その変数の名前の一部を通常のphp $ variableに格納し、名前を動的に設定してその定義された変数にアクセスします。すなわち:

define('xxx_yyy',123);
$a='xxz';
$b='_yyy';


//How to I echo out "123" now?  (without using echo xxx_yyy);
//Something like these (don't work):
echo $a$b;
echo {$a$b};

私が考えることができる唯一のことは:

$defined=get_defined_vars();
echo $defined[$a$b];

しかし、それは不格好なようです

4

5 に答える 5

9
echo constant ( $a . $b );

それは定数なので、あなたが探していると思うものです。

于 2012-05-08T21:51:11.863 に答える
2

constant()を使用できます。http://us3.php.net/manual/en/function.constant.php

于 2012-05-08T21:49:53.587 に答える
2

それは変数ではなく、定数です:

echo constant ( $a . $b );
于 2012-05-08T21:50:29.153 に答える
0

このための正しい関数はget_defined_constants()であり、 get_defined_vars ()ではありません。

于 2014-01-10T08:58:09.920 に答える
-4

123をエコーアウトするには、次を使用します。

echo $a . $b;

また、define()は、変数ではなく定数を作成します。

于 2012-05-08T21:51:20.253 に答える