php使用_call实现多继承的方法

小编给大家分享一下php使用_call实现多继承的方法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

创新互联建站IDC提供业务:四川乐山服务器托管,成都服务器租用,四川乐山服务器托管,重庆服务器租用等四川省内主机托管与主机租用业务;数据中心含:双线机房,BGP机房,电信机房,移动机房,联通机房。

   

这篇文章简单介绍下使用_call实现代码的复用。

_call:php的一个魔术方法,当调用类中不存在的method时,会自动调用_call.

示例代码:

class One{
    function method_1(){
        echo '11
'; } function method_2(){ echo '22
'; } } class Two{ function method_3(){ echo '33
'; } function method_4(){ echo '44
'; } } class StaticDemo{ protected $Class = array(); public function __construct(array $class = array()){ $this->Class = $class; } public function __call($name, $arguments) { // TODO: Implement __call() method. foreach ($this->Class as $v){ if (is_callable(array($v, $name))) { //call_user_func_array在上篇文章中已作出理解 return call_user_func_array(array($v, $name), $arguments); } } return call_user_func_array(array($this, $name), $arguments); } } $obj = new StaticDemo(array(new One(), new Two())); $obj->method_1(); $obj->method_3();

运行结果:11,33

以上是php使用_call实现多继承的方法的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!


本文题目:php使用_call实现多继承的方法
文章URL:http://bzwzjz.com/article/gsdjgj.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站建设公司 成都网站设计 营销型网站建设 成都网站设计 高端品牌网站建设 网站制作 成都网站设计 品牌网站建设 网站设计 四川成都网站建设 成都定制网站建设 成都网站制作 移动手机网站制作 高端网站建设 品牌网站建设 攀枝花网站设计 网站设计制作报价 高端网站设计 成都营销网站制作 成都模版网站建设 成都网站制作 成都企业网站建设公司