• 技术文章 >后端开发 >PHP问题

    php __call方法如何使用

    藏色散人藏色散人2020-08-29 13:43:18原创861

    php __call方法是调用未定义的方法时调用的,使用语法如“$foo->__call('test', array(1, "2", 3.4, true))”,也就是相当于“$foo->test(1, "2", 3.4, true)”。

    推荐:《PHP视频教程

    php魔术方法__call的用法

    __call是调用未定义的方法时调用的。

    也就是说,你的test方法未定义,那么test这个方法名就会作为__call的第一个参数传入,而test的参数会被装进数组中作为__call的第二个参数传入。

    所以当你调用$foo->test(1, "2", 3.4, true)时,实际是相当于调用$foo->__call('test', array(1, "2", 3.4, true))。

    __call方法在调用类的方法时触发,比如:

    <?php
    class google{
        public function search(){
            //TODO
        }
        public function __call($method, $parameters){
            //这里的method便是对应的方法,即"->"后面的字符串,$parameters是通过这个方法传过来的参数
        }
    }
     
    $google = new google();
    $keyword = 'VR';
    $google->search($keyword);
    //当调用当前对象不存在的方法时,会转向__call
    $google->operate();

    利用__call可以做些封装,从而调用其它对象和方法。

    以上就是php __call方法如何使用的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    专题推荐:php __call
    上一篇:php webservice 乱码怎么办 下一篇:php fpm 进程数如何设置
    20期PHP线上班

    相关文章推荐

    精选22门好课,价值3725元,开通VIP免费学习!• PHP中的is_callable()与method_exists()函数• PHP魔术方法之__call和__callStatic详解(代码实例)• PHP如何使用面向对象魔术方法之__call函数• php call方法怎么用
    1/1

    PHP中文网