PHP对象传递
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | <?php//对象的值传递classPerson{    //对象属性 成员变量    public$name;    protected$age;    private$work;    //对象行为 成员方法}//程序允许在内存的栈区$zhangsan= newPerson();var_dump($zhangsan); //object(Person) #1对象标识符$lisi= $zhangsan;  //传递的是对象标识符var_dump($lisi); //$object(Person) #1 对象标识符//每个包含对象的变量,都持有对象的引用(reference),而不是对整个对象的拷贝 | 
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | <?php//对象的值传递classPerson{    public$name;}$zhangsan= newPerson();$zhangsan->name = 'Zhang San';$lisi= $zhangsan;//将zhangsan的对象标识符传递给lisi,即lisi对zhangsan对象的引用。$lisi= 'abc'; // 'abc'没有对象标识符,因此lisi与zhangsan断开联系echo$zhangsan->name . PHP_EOL; | 
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | <?php//引用传递对象classPerson{    public$name;}$zhangsan= newPerson();$zhangsan->name = 'Zhang San';$lisi= &$zhangsan;//直接指向zhangsan的内存。$lisi= 'abc'; // 'abc'没有对象标识符,因此lisi与zhangsan断开联系echo$zhangsan->name . PHP_EOL;//PHP Notice:  Trying to get property of non-objectecho$zhangsan. PHP_EOL; | 
 
                    
                
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号