本文實例講述了PHP中引用類型和值類型功能與用法。分享給大家供大家參考,具體如下:
PHP中的四種簡單類型和復雜類型array都是值類型。同類型間賦值傳遞的是值,即創建一個副本給新變量。
例如:
$int1 = 123;
$int2 = $int1;//直接傳遞的是值,只是做了一個叫int1的副本叫int2
$int2 = 456;
echo $int1;//輸出 123
echo $int1 === $int2;//為假
$int1 = 123;
$int2 = $int1;//取地址符,傳遞的是引用
$int2 = 456;
echo $int1;//輸出 456
echo $int1 === $int2;//輸出 1.即為真
對象都是引用類型的,默認傳遞的就是引用,即新變量是舊變量的別名。
class Person{
public $name;
}
$p1 = new Person();
$p1->name = 'Sheldon';
$p2 = $p1;
$p2->name = 'Leonard';
echo $p1->name;//輸出:Lenoard
echo $p1 === $p2;//輸出:1 即全等
如果想得到對象的一個副本(將復制舊變量的所有屬性),從而互不影響,可以用clone關鍵字。
class Person {
public $name;
}
$p1 = new Person();
$p1->name = 123;
$p2 = clone $p1;
echo $p2->name;//輸出 123
$p2->name = 456;
echo $p1->name;//輸出 123
更多關于PHP相關內容感興趣的讀者可查看本站專題:《php面向對象程序設計入門教程》、《PHP數組(Array)操作技巧大全》、《PHP基本語法入門教程》、《PHP運算與運算符用法總結》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
您可能感興趣的文章:- PHP 引用的概念
- 詳解PHP的引用計數
- php的對象傳值與引用傳值代碼實例講解
- php傳值和傳引用的區別點總結
- php 多個變量指向同一個引用($b = &$a)用法分析
- php引用和拷貝的區別知識點總結
- php中對象引用和復制實例分析
- PHP實現無限極分類的兩種方式示例【遞歸和引用方式】
- PHP 弱引用的相關總結