1. 程式人生 > >php面向物件(2)值傳遞

php面向物件(2)值傳遞

PHP中值傳遞方式,2中

  值傳遞:傳遞的時候,拷貝的是資料本身。預設都是值傳遞

    結果:傳遞完成,有了2份同樣的資料,且2個變數“相互獨立”,不會相互影響

  引用傳遞:傳遞的時候,拷貝的是引用關係(資料的記憶體地址)。需要使用“&”符合才能實現引用傳遞

    結果:傳遞完成,資料仍然只要一份,但是2個變數共同指向該資料。

  示例:

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
<?php
//值傳遞 $a = 10; function fun($b) { $b = $b +20; return $b; } echo "值傳遞結果--a:".$a." b:".fun($a)."<br />"; //引用傳遞 class cla { public $a = 10; } $c1 = new cla(); $c2 = $c1; $c2->a = 20; echo "<hr />引用傳遞結果--c1->a:".$c1->a." c2->a:".$c2->a."<br />"; var_dump($c1);echo "<br />";
var_dump($c2);echo "<br />"; echo "<hr />"; unset($c1); var_dump($c1);echo "<br />"; var_dump($c2);echo "<br />"; ?> </body> </html>

  結果: