[ PHP ] – OOP 4 魔術方法 __get __set

這篇會介紹最常用的兩個魔術方法 __get __set 來讀寫屬性值,事實上php 內建的魔術方法不止這兩個。

class People {
	private $height;//身高
	private $weight;//體重
	private $sex;//姓別
	public function __get($name) {
        return $this->$name;
    }
    public function __set($name, $value) {
        $this->$name = $value;
    }
}
$jeff = new People();
$jeff->__set('height',170);//屬性名稱, 要附於的值
$jeff->__set('weight',65);
$jeff->__set('sex','male');
echo 'jeff 的身高是:';
echo $jeff->__get('height');
echo '<br>jeff 的體重是:';
echo $jeff->__get('weight');
echo '<br>jeff 的姓別是:';
echo $jeff->__get('sex');
//顯示結果
/*
jeff 的身高是:170
jeff 的體重是:65
jeff 的姓別是:male
*/
//是不是很神奇 之後屬性變多 也不用在多寫每個 屬性的存取方法了
!去下營經續永站本助幫能就下一點輕輕,話的您到助幫有章文的我果如 如果我的文章有幫助到您的話,輕輕點一下就能幫助本站永續經營下去!

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。