Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用一些“神奇的方法”访问getter_Php_Design Patterns - Fatal编程技术网

Php 使用一些“神奇的方法”访问getter

Php 使用一些“神奇的方法”访问getter,php,design-patterns,Php,Design Patterns,我最近一直在读一些关于魔法方法的东西,还有_; u _; u _; u _; u _; u _; g等。 但我不确定用哪一个来回答我的问题 情况如下: 我有一个类过滤器,其中有一个getParams方法。 调用$filter->params时,如何获取此方法?您尝试过吗? 您可以使用uuu get magic函数 比如说 class Filter { private $params = 'my value'; public function getParams(){

我最近一直在读一些关于魔法方法的东西,还有_; u _; u _; u _; u _; u _; g等。 但我不确定用哪一个来回答我的问题

情况如下:

我有一个类过滤器,其中有一个getParams方法。 调用$filter->params时,如何获取此方法?

您尝试过吗? 您可以使用uuu get magic函数

比如说

class Filter {

    private $params = 'my value';
    public function getParams(){
       return $this->params;
    }
    public function __get($param){
        $method = 'get' . $param;
        return $this->$method();
    }
}


var_dump((new Filter())->params);

但是我建议直接调用get函数。

为什么我要直接使用get函数?出于安全原因?