我有一个看起来像这样的数组:
array:2 [
0 => "text/csv"
1 => "text/plain"
]
我想在我的验证规则中使用该数组,如下所示:
return [
'file' => 'mimetypes:' . $array,
];
但这不起作用,我是否需要将其编码为字符串或其他内容?
答案 0 :(得分:6)
您要implode数组。它应该看起来像这样:
return [
'file' => 'mimetypes:' . implode(',', $array),
];
转换将获取数组的所有值,并使用第一个参数(在本例中为,
)将它们粘合在一起,从而为您提供数组中由,
字符分隔的值字符串。
答案 1 :(得分:2)
使用此
return [
'file' => 'mimetypes:' . implode(',', $array)
];
答案 2 :(得分:1)
您可以使用这种简单代码:
$file_rules = ["text/csv","text/plain"];
$rules = [
'username' => 'required',
'city' => 'required',
'profile_image' => 'mimes:$file_rules' // otherwise 'mimes:'.implode(',', $file_rules)
];
$messages = [
'username' => 'The :attribute shoud be Required.',
'city' => 'The :attribute should be required.',
'profile_image' => 'The :attribute should be Required.',
];
$validator = Validator::make($request->all(), $rules, $messages);
正在尝试这个。.....