在PHP类的静态变量中传递函数

时间:2019-03-27 07:55:59

标签: php

我有一个带有静态变量的类:

 class MyClass {
    protected static $rules = [
         'name' => 'required'
         'help' => 'required|in:' . implode(',', custom_helper_function());
    ];
 }

我想在此变量中使用自定义帮助函数并使用爆破。我该怎么办?现在我得到了错误:

expression is not allowed as field default value

谢谢。

1 个答案:

答案 0 :(得分:0)

您不能在变量定义上使用函数。如果它只是常规变量,我建议您在构造函数上分配值,但是如果是静态变量,则不可能/没有意义。

那你就做不到。尽管您可以使用静态功能实现类似的功能:

 class MyClass {

    public static function getRules() {
        $rules = [
         'name' => 'required',
         'help' => ( 'required|in:' . implode(',', custom_helper_function()) )
        ];
        return $rules;
    }
 }
 MyClass::getRules();

此外,不要忘记定义custom_helper_function。