PHP ReflectionMethod没有获得param的默认布尔值

时间:2017-10-15 09:47:32

标签: php reflection boolean

当我尝试使用ReflectionMethod获取具有默认值集的布尔参数的值时,我得到了空结果。

使用此代码:

section.episode_set.all()

我明白了:

    public function GetOrderBook($symbol = null, $limit = 100, $async = false)
    {
        if ($symbol !== null) {

            $params = [];
            $ref = new \ReflectionMethod($this, 'GetOrderBook');

            foreach ($ref->getParameters() as $param) {
                $name = $param->name;
                $params[$name] = $$name;
            }

            print_r($params);
        }
    }

有没有办法通过反射获得param的默认值?

1 个答案:

答案 0 :(得分:1)

print_r函数输出字符串表示值。 false的字符串表示形式为空字符串。要查看数组中的实际值,请使用var_dump

var_dump($params);

之后你会看到:

["async"]=>bool(false)