通常、変数は次のようなステートメントによって名前が付けられます:
コードをコピー コードは次のとおりです:
$a = 'hello';>
変数の値を変数の名前として使用することを指します。上記の例では、以下のように 2 つの $ 記号を使用して、変数の名前に hello を設定できます。
コードをコピーします コードは次のとおりです:
$$a = 'world';>
上記の 2 つのステートメントを通じて、2 つの変数が定義されます。 a、インストールされたコンテンツは「hello」、変数 $hello、インストールされたコンテンツは「world」です。 したがって、次の言語:
コードをコピーします コードは次のとおりです:
echo "$a ${$a}"
の出力次のステートメントはまったく同じです。 一貫性があります:
これらはすべて出力されます。こんにちは世界。
配列に変更可能な変数名を使用するには、あいまいさの問題を解決する必要があります。つまり、$$a[1] を記述する場合、パーサーは $a[1] を変数として扱うことを意味するのか、それとも $$a [1] がこの変数を参照することを意味するのかを理解する必要があります。索引。このあいまいさを解決するための構文は、最初のケースでは ${$a[1]} を使用し、2 番目のケースでは ${$a}[1] を使用します。
クラスプロパティには、可変プロパティ名を通じてアクセスすることもできます。変数のプロパティ名は、呼び出しが行われた変数のアクセス スコープから取得されます。たとえば、式が $foo->$bar のような場合、ランタイムはローカル変数スコープで変数 $bar を検索し、その値が $foo オブジェクトのプロパティ名として使用されます。 $bar が配列の場合にも使用できます。
例1 変数変数名
コードをコピーします
コードは次のとおりです:
class foo { var $bar = 'I am bar.'; $foo = new foo( );
$bar = 'bar';
$baz = array('foo', 'baz', 'qux');
echo $ foo->$baz[1] . "n"?>
私は bar です。
警告
変数名は、PHP 関数およびクラスのスーパー グローバル配列変数では使用できません。変数 $this も、動的に名前を付けることができない特殊な変数です。
http://www.bkjia.com/PHPjc/325022.html
www.bkjia.com
true
http://www.bkjia.com/PHPjc/325022.html
技術記事
通常、変数は次のステートメントによって名前が付けられます。 次のようにコードをコピーします。 ?php $a = 'hello'; 変数の名前は、変数の値を変数の名前として使用することを指します。オン...