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);