PHP変数変数
はじめに
PHPでは、変数名を動的に設定することができます。このような変数は、既存の変数の値を名前として使用します。変数変数は、接頭辞として2つの$記号で定義されます
例
<?php $var1="xyz"; //normal variable $$var1="abcd";//variable variable echo $var1 . "\n"; echo $$var1 . "\n"; echo "{$$var1} $xyz"; ?>
出力
このスクリプトは次の出力を生成します
xyz abcd abcd abcd
$$var1の値は$xyzと同じであり、xyzは$var1の値であることに注意してください。
正規変数の数値を変数変数として使用することはできません
例
<?php $var1=100; //normal variable $$var1=200;//variable variable echo $var1 . "\n"; echo $$var1 . "\n"; echo $100; ?>
出力
このスクリプトを実行すると、次の結果が表示されます
PHP Parse error: syntax error, unexpected '100' (T_LNUMBER), expecting variable (T_VARIABLE) or '{' or '$' line 6
配列の添え字で変数変数を定義することもできます。次の例では、変数変数は通常の配列の0番目の要素を使用して定義されています
例
<?php $var1=array("aa","bb"); //normal variable ${$var1[0]}=10;//variable variable with array element echo $var1[0] . "\n"; echo $aa . "\n"; echo ${$var1[0]} . "\n"; ?>
出力
これにより、次の結果が生成されます-
aa 10 10
クラスプロパティには、変数プロパティ名を使用してアクセスすることもできます。この機能は、プロパティ名が配列で構成されている場合に役立ちます。
例
<?php var $u = "Architecture"; var $ugCourses = array("CSE","MECH","CIVIL"); $obj = new branches(); $courses = "ugCourses"; echo $obj->{$courses[0]} . "\n"; echo $obj->{$courses}[0] . "\n"; ?>
出力
これにより、次の結果が生成されます-
Architecture CSE
-
PHPのextract()関数
extract()関数は、変数を配列から現在のシンボルテーブルにインポートします。正常に抽出された変数の数を返します。 構文 extract(arr, rules, prefix) パラメータ 到着 −指定された配列 ルール −無効な変数名の処理方法を指定します。可能な値は次のとおりです- EXTR_OVERWRITE −デフォルト。衝突すると、既存の変数が上書きされます EXTR_SKIP −衝突時に、既存の変数は上書きされません EXTR_PREFIX_SAME −衝突時に、変数名にプレフィックスが付けられます EXTR_PREFIX_
-
PowerShellの変数
コンピュータサイエンス(およびカジュアルコンピューティング)では、変数は、後で使用するために任意の情報を保持するメモリ内の場所です。つまり、データを出し入れするための一時的なストレージコンテナです。 Bashシェルでは、そのデータは単語(文字列)にすることができます 、コンピュータ用語で)または数値(整数 。 これまで(故意に)コンピューターで変数を使用したことはないかもしれませんが、おそらく人生の別の領域で変数を使用したことがあります。 「givemethat」や「lookatthis」などと言うときは、文法変数を使用しています(代名詞 )。 「これ」と「それ」の意味は、あなたが頭の中で描