Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.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 Laravel正则表达式验证错误_Php_Laravel - Fatal编程技术网

Php Laravel正则表达式验证错误

Php Laravel正则表达式验证错误,php,laravel,Php,Laravel,我在Laravel中使用正则表达式验证。但是错误发生了。我想控制,这是不是图像。图像扩展名可以是.jpg、.png或仅.jp2。以下是我的实现: protected $rules = [ 'preview_path' => 'required|regex:[^.*\.(jpg|png)$]', 'slide_path' => 'required|regex:[^.*\.(jp2)$]' ]; 错误: preg_match():未找到结尾匹配分隔符']

我在Laravel中使用正则表达式验证。但是错误发生了。我想控制,这是不是图像。图像扩展名可以是.jpg、.png或仅.jp2。以下是我的实现:

protected $rules = [
      'preview_path'  => 'required|regex:[^.*\.(jpg|png)$]',
      'slide_path'    => 'required|regex:[^.*\.(jp2)$]'
];
错误:

preg_match():未找到结尾匹配分隔符']'



编辑


我不发送文件,只发送json格式的字符串路径。所以我不能使用mime类型验证

您可以将其用于比regex更好的扩展验证

您可以将其用于比正则表达式更好的扩展验证

这个应该可以用

protected $rules = [ 
    'preview_path' => ['required|regex:/^.*\.(jpg|png)$/'], 
    'slide_path' => ['required|regex:/^.*\.(jp2)$/'] 
];
这个应该有用

protected $rules = [ 
    'preview_path' => ['required|regex:/^.*\.(jpg|png)$/'], 
    'slide_path' => ['required|regex:/^.*\.(jp2)$/'] 
];

为什么不使用
mimes
<代码>'preview_path'=>'必需| mimes:jpg,png''slide_path'=>'必需| mimes:jp2'@Rodrane这是REST API的一部分,我将路径作为json(字符串)而不是文件发送。模仿不起作用。你的问题问得不清楚,那么很明显他们不是图像请检查我的答案为什么不使用
Mimes
<代码>'preview_path'=>'必需| mimes:jpg,png''slide_path'=>'必需| mimes:jp2'@Rodrane这是REST API的一部分,我将路径作为json(字符串)而不是文件发送。哑剧不起作用。你问的问题不清楚,那么很明显,它们不是图像。检查我的答案