魔術方法在框架中的應用

<?php
class UserModel{
    protected $email='[email protected]';
    protected $data=array();

    public function __set($k,$v)//__set傳兩個參數即屬性名和屬性值,__get,__isset,__unset都是傳一個參數,即屬性名

{

        $this->data[$k]=$v;
    }
    public function __get($p){

        return isset($this->data[$p])?$this->data[$p]:NULL;//??return了什麼返回NULL時,返回空,什麼都沒有

   }
    public function __isset($p){
        return isset($this->data[$p]);
    }
    public function __unset($p){
        unset($this->data[$p]);
    }
    public function add(){
        $sql='insert into table(';
        $sql .=implode(',', array_keys($this->data));
        $sql .=')values(\'';
        $sql .=implode("','", array_values($this->data));//經測試,是本人的sublime text 有問題吧
        $sql .='\')';
        return $sql;
    }
}
echo '<pre>';
$usermodel=new UserModel();
print_r($usermodel);

$usermodel->name='lisi';
$usermodel->email='[email protected]';
print_r($usermodel);

echo $usermodel->add();

isset($usermodel->name);
unset($usermodel->name);
print_r($usermodel);
發佈了18 篇原創文章 · 獲贊 3 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章