define("EMPLOYEE_NAME_ID","employee"); のような定数があります。変数 $code = EMPLOYEE;
今、私は以下のように印刷したい
<?php echo $code.NAME_ID; ?>
しかし、これは「EMPLOYEE_NAME_ID」のみを印刷し、「従業員」を印刷したい。次に、これを印刷する方法。全体的な手段は、langファイルから変数を再取得したいということです。
PHP の引用符で囲まれていない文字列は定数として解析され
、定数が未定義の場合は
(変数ではなく) 文字列として扱われます。
定数を扱う場合は、定数関数を利用できます:-
echo constant("{$code}_NAME_ID");
ただし、定数が定義されていない場合、この関数を使用すると警告メッセージが返されます。parse_ini_file
のような他のオプションがあります。
これは、大量の設定/構成を処理するのに理想的です。
より良い方法は、定数関数を使用することです
echo constant($code."NAME_ID");
define('VAR1', 'my var' );
$var2 = 'hello';
echo $var2.''.VAR1; // period, two apostrophes, period
// same as if you were doing:
echo "some string ".$var2." some more string".VAR1;
2 つのうちの 1 つは定数であり、変数ではありません。それらを可変変数のように使用しようとしていました(多くの場合、そのarray
ような状況では が好まれます)。
constant()
ただし、ルックアップ関数を使用して、定数で同じ効果を得ることができます。
<?php echo constant("{$code}_NAME_ID"); ?>
_
これが機能するには、定数サフィックスも$code
含まれていない追加のアンダースコアも必要であることに注意してください。
define("EMPLOYEE_NAME_ID","employee")
は定数なので、変数と組み合わせる場合、構文は次のようになります。
$temp = "John";
$var = EMPLOYEE_NAME_ID." : ".$temp;
echo $var; {Output : employee : john}