ホームページ >バックエンド開発 >PHPチュートリアル >php が値渡しまたは参照渡しになるのはいつですか?

php が値渡しまたは参照渡しになるのはいつですか?

藏色散人
藏色散人オリジナル
2019-05-22 10:34:225418ブラウズ

変数はデフォルトで常に値によって割り当てられます。つまり、式の値が変数に代入される場合、元の式全体の値がターゲット変数に代入されます。これは、たとえば、ある変数の値が別の変数に割り当てられているときにその変数の値を変更しても、他の変数には影響を与えないことを意味します。

php が値渡しまたは参照渡しになるのはいつですか?

#PHP には、変数に値を割り当てる別の方法、参照割り当ても用意されています。これは、新しい変数が単に元の変数を参照する (つまり、「エイリアス」または「ポイントする」) ことを意味します。新しい変数を変更すると元の変数に影響し、その逆も同様です。参照による代入を使用するには、代入する変数 (ソース変数) の前に & 記号を追加するだけです。

オブジェクトはデフォルトで参照によって渡されます。大きなデータの場合は、メモリのオーバーヘッドを節約できる参照渡しの方が適しています。

注:

値渡し: 関数内の値への変更は関数の外では無視されます。

参照渡し: 関数内の値への変更は、関数の外部にも反映されます。

アプリケーション シナリオ: 値渡しの場合、PHP は値をコピーする必要がありますが、参照渡しの場合は値をコピーする必要がないため、参照渡しは通常、大きな文字列またはオブジェクトに使用されます。

利点と欠点:

値で渡す場合、PHP は値をコピーする必要があります。これは、大きな文字列やオブジェクトの場合にはコストがかかります。参照渡しでは値をコピーする必要がないため、パフォーマンスの向上に役立ちます。

以上がphp が値渡しまたは参照渡しになるのはいつですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。