首页 新闻 会员 周边 捐助

php中 $this->name的作用

0
悬赏园豆:20 [已关闭问题] 关闭于 2015-09-23 16:09

在创建完对象后,name属性动态创建赋值的有什么作用,是以什么形式存储的呢,与 $car->__set("0", "呵呵哒");这个与

$car->name = "小菜";

赋值有什么区别呢

下、感谢您的帮助。。

<?php
// PHP中的重载指的是动态的创建属性与方法,是通过魔术方法来实现的。
// 属性的重载通过__set,__get,__isset,__unset
// 来分别实现对不存在属性的赋值、读取、判断属性是否设置、销毁属性。

class Car {
    public $ary = array();
    
    //赋值
    public function __set($key, $val) {
        $this->ary[$key] = $val; 
    }
    
    //读取
    public function __get($key) {
        return $this->ary[$key];
    }
    
    //判断属性是否设置
    public function __isset($key) {
        if(isset($this->ary[$key])) {
            return true;
        }
        return false;
    }
    
    //销毁属性
    public function __unset($key) {
        unset($this->ary[$key]);
    }
    

}
//初始化对象
$car = new Car();

//为数组赋值
// $car->__set("0", "呵呵哒");
//name属性动态创建并赋值
$car->name = "宝马";
// echo $car->name;
// echo $car->ary[0];
$car->name = "小菜";
echo $car->name;
问题补充:

。。。人呢。。好难搜。

闻香识人的主页 闻香识人 | 初学一级 | 园豆:29
提问于:2015-06-19 09:50
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册