返回php属性重载......登陆

php属性重载技术

温度。2019-06-05 14:17:0393

<?php




const IS_ISSET=true;

const IS_GET=true;

const IS_SET=true;

const IS_UNSETA=false;


class Visit

{

protected $data=[];


public function __isset($name)

{

return IS_ISSET && isset($this->data[$name]);

}


public function __get($name)

{

return IS_GET?$this->data[$name]:'非法访问';

}


public function __set($name,$value)

{

IS_SET?$this->data[$name]=$value:'禁止赋值';

}


public function __unset($name)

{

if(IS_UNSET)

unset($this->data[$name]);

}else{

echo '禁止销毁';

}

}

}


$visit= new Visit();



$visit->table='员工表';








require 'public/class.php';

class Web

{


   public function __call($name,$arguments)

   {

    return '方法:'.$name.'<br>参数类列表'.var_export($arguments,true);


    return call_user_func_array([(new Site),'show'],$arguments);

   }


   public static function add($arguments)

   {

    return call_user_func_array(['Site','add'],$arguments);

   }

}


$web=new Web();


echo $web->show('php中文网','海量资源'),'<hr>';




echo Web::add(30,50);


最新手记推荐

• 用composer安装thinkphp框架的步骤• 省市区接口说明• 用thinkphp,后台新增栏目• 管理员添加编辑删除• 管理员添加编辑删除

全部回复(0)我要回复

暂无评论~
  • 取消回复发送
  • PHP中文网