用于在php中自动调用的魔术函数

时间:2018-05-07 13:31:04

标签: php

在我的课程中,我在开头有相同前缀的方法。

  

的sendMessage()

     

sendPhoto()

     

sendDocument()

所以我需要的是,每当这些方法(带有前缀)被初始化而不在方法中放入任何东西时,就会以某种方式初始化类中的另一个方法。身体。 开箱即用有没有办法做到这一点?一些魔术php函数,每次调用带前缀的方法时都会触发...

1 个答案:

答案 0 :(得分:1)

使用__call()魔法:

class MagickClass {
    public function __call($name, params = []) {
        if (strpos($name, 'send') === 0) {
            $this->process(strtolower(str_replace('send', '', $name)));
        } else {
            throw new Exception('Not found', 404);
        }
    }

    private function process($action) {

    }
}