调用未定义的方法 Illuminate\Validation\Rules\In::__set_state()

vin*_*ary 1 php laravel laravel-5 laravel-validation laravel-5.5

我尝试了各种方法来解决这个问题,比如清除缓存、composer 更新/安装,但之后php artisan config:cache,它又出现了。

在 config.php 第 839 行:
调用未定义的方法 Illuminate\Validation\Rules\In::__set_state()

整页变成空白页。在bootstrap/cache/config.php文件中,它显示:

'environment' => 
    array (
      'form' => 
      array (
        'rules' => 
        array (
          'app_name' => 'required|string|max:50',
          'environment' => 'required|string|max:50',
          'environment_custom' => 'required_if:environment,other|max:50',
          'app_debug' => 
          array (
            0 => 'required',
            1 => 
            Illuminate\Validation\Rules\In::__set_state(array(
               'rule' => 'in',
               'values' => 
              array (
                0 => 'true',
                1 => 'false',
              ),
            )),
          ),
Run Code Online (Sandbox Code Playgroud)

小智 5

我也收到了这个错误,因为不是

“照亮\验证\规则”

我已经把

“照亮\合同\验证\规则”


小智 5

这是laravel/framework/src/Illuminate/Validation包的问题。

Rules文件夹中,我们有一个名为In(file In.php) 的类

它缺少功能__set_state

如果您将在此类中添加以下功能,

static public function __set_state($array = []){
        return 'boolean';
    }
Run Code Online (Sandbox Code Playgroud)

问题将得到解决。此外,它是临时解决方案(composer install/update 命令可以删除您的功能

享受...