ホームページ >バックエンド開発 >PHPチュートリアル >PHP変数を参照するにはどのような方法がありますか? PHPの変数参照機構のメソッドまとめ
この記事でわかるのは、PHP 変数を参照する方法にはどのようなものがあるのかということです。このPHP変数の参照機構をまとめたものは参考価値があり、困っている方は参考にしていただければ幸いです。
1. php の変数参照、「&」:
##
$a = "hello world";//定义一个变量,下面赋值给$b $b = $a; //这一步实际上原理是会将变量$a复制拷贝一份,也就是内存中重新申请一个地址存储变量$b注: PHP では、「
=」を使用して値を直接割り当てると、実際には右側の変数が $b にコピーされ、メモリ領域が生成されます。その結果、同じ内容が 2 つのコピーに保存される可能性があります。メモリ。
2. # を引用するには、記号「&
」を使用します。#$a = "hello world";
$b = &$a;
注: 参照を使用する場合、PHP エンジンは変数をコピーしません。実際、ポインタはメモリ内の $a のアドレスを指し、$b はこのポインタを保存します。
したがって、参照を使用する場合、
$b の値を変更すると、それに応じて $a も変更されます。
$a = "hello world";
$b = &$a;
$b = "test new value"; //把b的值改掉,a的值也会跟着改变
echo $a; //输出test new value,因为改变了b的值也会改变a的值。
関数を定義するときに次のような状況をよく見かけます。
#function test (&$param){
$param++;
}
$k = 8;
test($k);
echo $k; //结果$k的值被函数里面改变了,输出9。
注: $param の前に参照があるため、渡されたパラメータはメモリにコピーされず、直接コピーされます。元のメモリ空間を参照します。したがって、記号 & を使用して渡された変数値が変更されると、元のメモリ空間の値 も変更されます。
#3. 変数を破棄するとき。元の値は変わりません。
$a = 'd'; $b = &$a; $b = 8; var_dump($b,$a); //因为是引用了,所以把b的值改掉,a的值也跟着改为8了。 unset($b); //调用unset删除b变量,a变量不会删除 var_dump($b,$a); //输出null和8注: $b 変数を削除するために unset を呼び出すと、PHP エンジンは変数シンボル テーブルから変数 I を見つけます。 $b を削除したい場合は、もともと変数 $a を参照していますが、削除すると $a 変数がなくなってしまうため、削除するのが困難です。そのため、まず $a 変数をコピーしてから、$b 変数を削除します。
関連する推奨事項:
php は open と fwrite を使用して複数の形式でファイル (コード) をエクスポートします
phpソリューション内の Excelファイルのエクスポート時にメモリ オーバーフローが発生する
#
以上がPHP変数を参照するにはどのような方法がありますか? PHPの変数参照機構のメソッドまとめの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。