1. 程式人生 > 其它 >PHP __set(),__get(),__isset(),__unset()四個方法應用

PHP __set(),__get(),__isset(),__unset()四個方法應用

一般來說,總是把類的屬性定義為private,這更符合現實的邏輯。但是, 對屬性的讀取和賦值操作是非常頻繁的,因此在PHP5中,預定義了兩個函式”__get()”和”__set()”來獲取和賦值其屬性,以及檢查屬性的”__isset()”和刪除屬性的方法”__unset()”。www.yifangmj.com,我們為每個屬性做了設定和獲取的方法,在PHP5中給我們提供了專門為屬性設定值和獲取值的方法,”__set()”和“__get()”這兩個方法,這兩個方法不是預設存在的, 而是我們手工新增到類裡面去的,像構造方法(__construct())一樣,類裡面添加了才會存在,可以按下面的方式來新增這兩個方法,當然也可以按個人的風格來新增:

<?php
//__get()方法用來獲取私有屬性
function __get($property_name)
{
if (isset($this->$property_name))
{
return ($this->$property_name);
}
else
{
return (NULL);
}
}

//__set()方法用來設定私有屬性
function __set($property_name, $value)
{
$this->$property_name = $value;
}