您好,欢迎访问一九零五行业门户网

php经过魔术方法_call实现类函数重载

php通过魔术方法__call实现类函数重载
由于在php是弱类型语言,并不像c++一样可以通过改变函数返回值的类型和函数的参数个数进行重载!但在实际开发中可能会有重载函数的需求,为了满足开发需求,我们可以通过魔术方法__call()来实现函数重载!
class templates { function __call($fun,$argv){ if($fun==assign){ if(count($argv)==1){ $this->assign1($argv[0]); } elseif(count($argv)==2){ $this->assign2($argv[0],$argv[1]); } } } //assign函数接受参数 function assign2($key,$value){ if(isset($key)&&!empty($value)){ $this->val[$key]=$value; }else{ exit(error:请设置变量); } } //重载assign函数接受数组 function assign1($array){ if(!empty($array)){ foreach($array as $key => $value){ $this->val[$key]=$value; } }else{ exit(error:请设置数组); } }}
其它类似信息

推荐信息