Php 在Laravel中验证JSON数组

Php 在Laravel中验证JSON数组,php,json,laravel,laravel-5,laravel-5.2,Php,Json,Laravel,Laravel 5,Laravel 5.2,我有一个控制器,接收以下POST请求: { "_token": "csrf token omitted", "order": [1,2,3,4,5,6,7,8] } 如何使用验证器确保顺序中的元素是唯一的,并且介于1和7之间?我尝试了以下方法: $this->validate($request, [ 'order' => 'required|array', 'order.*' => 'unique|integer|between:1,7' ]); 选

我有一个控制器,接收以下POST请求:

{
  "_token": "csrf token omitted",
  "order": [1,2,3,4,5,6,7,8]
}
如何使用验证器确保
顺序中的元素是唯一的,并且介于1和7之间?我尝试了以下方法:

$this->validate($request, [
    'order' => 'required|array',
    'order.*' => 'unique|integer|between:1,7'
]);

选中第一个子句,即使输入无效,第二个子句也会通过。

验证程序关键字
unique
用于检查数据库中值的重复项

对于这种情况,您应该使用自定义验证器

请参阅:

使用:

清晰的

使用阵列时,验证中的字段不得有任何 重复值

在您的情况下,它可能如下所示:

$this->validate($request, [
    'order' => 'required|array',
    'order.*' => 'distinct|integer|between:1,7'
]);