php类自动装载、链式操作、魔术方法实现代码
1、自动装载实例目录下有3个文件:index.php load.php tests文件夹 tests文件夹里有 test1.php ';
echo __FILE__.'
'; } } index.php内容 load.php内容 2、php 链式操作class Database{
function where($where){ return $this; } function order($order) { function limit($limit){ ?> //index.php 3、魔术方法:__get/__set:接管对象属性。在给不可访问属性赋值时, __set() 会被调用;读取不可访问属性的值时,__get() 会被调用。 __call/__callStatic:在对象中调用一个不可访问方法时,__call() 会被调用;用静态方式中调用一个不可访问方法时,__callStatic() 会被调用。 __toString:一个类转化成字符串 __invoke:以调用函数的方式调用一个对象时,__invoke() 方法会被自动调用。 class Object{
protected $array = array(); function set($key,$value){ $this->array[$key] = $value; } function get($key){ //echo METHOD; return $this->array[$key]; } function __call($func,$param){ static function __callstatic($func,$param) { function toString(){ function __invoke($param) { } title = 'hello';
echo $obj->title;
echo $obj->test1('hello',123);
echo $obj::test1('hello1',1234);
echo $obj;
echo $obj('test1');
以上就是php中自动装载、链式操作、魔术的实现代码,需要的朋友可以参考一下。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |