2017-02-17 6 views
0

外観:作るダイナミックに定義(定数)変数名のPHP

${'a' . 'b'} = 'hello there'; 
echo $ab; 

これは"hello there"

返しますが、私は動的に定義された変数を宣言しますたいです。

$error_code = $_GET[error_code]; //for example: 404 
define(E404, 'Not found'); 
echo E{$error_code}; 

それはエラーを返し、私はPHPのコードにE404力学を生成し、その値を取得したいです。 私が探しているシンタックスやテクニックがここにあるのはわかりません。そのため、研究が難しくなります。

+0

あなたは配列を探しています。これはこれをもっと簡単にします。 – jeroen

+0

[定義された定数の名前として$変数を使用してPHP定義定数にアクセスする方法](http://stackoverflow.com/questions/10507034/how-to-access-php-defined-constant-using- a-variable-defined-of-the-defined) –

答えて

2

文字列から定数の値を取得するには、constant()を呼び出す必要があります。例は次のようになります:

$error_code = 404; 
define('E404', 'Not found'); 
echo constant("E{$error_code}"); 

と表示され、Not foundと表示されます。

1
<?php 
    $ErrorCode = $_GET['error_code']; // Where error_code = 404 
    $Errors = array(); // here we are creating a new array. 
    $Errors[$ErrorCode] = "Whatever"; // here we are setting a key of the new array, with the keys name being equal to the $ErrorCode Variable 

    print_r($Errors); // Would return Array([404] => Whatever); 

    echo $Errors["404"]; // Would return Whatever 

?> 
+0

このコードスニペットは歓迎されていますが、いくつかの助けを与えるかもしれませんが、[説明があれば大幅に改善される](// meta.stackexchange.com/q/114762)の* how *と* *これが問題を解決します。あなたが今質問している人だけでなく、将来読者のための質問に答えていることを忘れないでください!説明を追加するためにあなたの答えを[編集]し、どんな制限と前提が適用されるかを示してください。 –

関連する問題