ホームページ > バックエンド開発 > PHPの問題 > PHP配列は値または参照で渡されますか?

PHP配列は値または参照で渡されますか?

青灯夜游
リリース: 2023-03-17 18:06:02
オリジナル
3412 人が閲覧しました

php 配列は値によって渡されます。 PHP 配列の転送は値の転送です。関数を呼び出すときに、PHP 配列を実パラメータとして仮パラメータに代入し、関数内で変更しても配列自体には影響しません。これは、このプロセスでの転送が値の転送であることを示し、配列変数は、この配列自体への参照を指していません。

PHP配列は値または参照で渡されますか?

#このチュートリアルの動作環境: Windows7 システム、PHP8 バージョン、DELL G3 コンピューター

php 配列が渡されます値渡し

#PHP で渡される配列は、参照ではなく値によって渡されます。

関数を呼び出すときは、PHP 配列を実パラメータとして仮パラメータに割り当てます。関数内でそれを変更しても、配列自体には影響しません。

このプロセスでの転送は値によるものであることを説明してください。配列変数は配列自体への参照ではありません。PHP 配列自体は値の形式で存在し、仮パラメータは配列。

これは他の言語 (C、Js など) とは大きく異なるため、注目に値します。

例は次のとおりです。

<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(
    &#39;name&#39; => &#39;corn&#39;,
    &#39;age&#39; => &#39;24&#39;,
);
var_dump($arr);
test_arr($arr);
function test_arr($arr){
    $arr[&#39;name&#39;] = &#39;qqyumidi&#39;;
}
var_dump($arr); 
?>
ログイン後にコピー

PHP配列は値または参照で渡されますか?

値が再割り当てされても、元の配列自体には影響しないことがわかります。

js コードは次のとおりです。


var arr = new Array(&#39;corn&#39;, &#39;24&#39;);
test_arr(arr);
function test_arr(arr){
    arr[0] = &#39;qqyumidi&#39;;
}
console.log(arr);  //result:["qqyumidi", "24"]
ログイン後にコピー

PHP配列は値または参照で渡されますか?

PHP で値の転送に参照転送エフェクトを使用する必要がある場合は、アドレス文字

& を仮パラメータの前に置きます。

<?php
header("Content-type:text/html;charset=utf-8");
$aa = 100;
echo "原变量值:".$aa; 
test_vars($aa);
function test_vars(&$aa){
    $aa = 200;
}
echo "<br>修好后:".$aa;    //result: 200
?>
ログイン後にコピー

PHP配列は値または参照で渡されますか?

注:

PHP では、文字列、整数、浮動小数点、配列などのほとんどの変数型は、すべて値型ですが、クラスとオブジェクトは参照型であるため、使用する場合はこの点に注意する必要があります。

推奨学習: 「

PHP ビデオ チュートリアル

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

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
関連するチュートリアル
人気のおすすめ
最新のコース
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート