Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/286.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 将MessageBag转换为simble单列数组_Php_Laravel_Validation - Fatal编程技术网

Php 将MessageBag转换为simble单列数组

Php 将MessageBag转换为simble单列数组,php,laravel,validation,Php,Laravel,Validation,在Laravel6中,我有以下代码 $messageBag = Validator::make([], [ 'x' => 'required|int' ])->getMessageBag(); // just for example 并且需要将$messageBag转换为结构如下的数组: [ "The x field is required.", "The x field is bla bla bla.", "The y field is something.",

在Laravel6中,我有以下代码

$messageBag = Validator::make([], [ 'x' => 'required|int' ])->getMessageBag(); // just for example
并且需要将
$messageBag
转换为结构如下的
数组

[
   "The x field is required.",
   "The x field is bla bla bla.",
   "The y field is something.",
]
$messageBag->toArray()的结构是:

[
   "x" => [
        "The x field is required.",
   ],
]

您可以使用Laravel的内置

在您的情况下,您可以使用:

$flatary=Arr::flant($messageBag->toArray())
正如文件所说:

展平方法将多维数组展平为单层数组


您可能不想这样做的原因是,可能有多个字段不符合相同的验证规则,并且它们使用相同的消息。我认为,这是无用的、毫无意义的和错误的。但是我必须这么做。试试看
Arr::flatte($messageBag->toArray())
@apokryfos你应该回答这个问题。