2016-04-26 135 views
1

我试图检查是否有嵌套数组中的空数组。如何检查多维数组是否为空或laravel

这是我从我的表单中得到的。

array:15 [▼ 
    "_token" => "h4aR4xJlWhZveRKbAgHzgzHWSKSqyhVKb7OHAgWH" 
    "name" => "Test office" 
    "is_department" => "0" 
    "hours" => "1-3" 
    "description" => "Description" 
    "content" => "<p>Content</p>" 
    "street" => "123 Street" 
    "city" => "Foomania" 
    "state" => "Sweet state" 
    "postal" => "98234" 
    "phone" => "5748293212" 
    "fax" => "2123131233" 
    "email" => "[email protected]" 
    "additional-page" => "" 
    "office_fees" => array:4 [▼ 
    0 => array:2 [▼ 
     "description" => "" 
     "fee" => "" 
    ] 
    1 => array:2 [▼ 
     "description" => "" 
     "fee" => "" 
    ] 
    2 => array:2 [▼ 
     "description" => "" 
     "fee" => "" 
    ] 
    3 => array:2 [▼ 
     "description" => "" 
     "fee" => "" 
    ] 
    ] 
] 

如何检查office_fees中是否有空数组?

要明确,office_fees将始终返回至少一个数组。我想要的是能够确定office_fees是否需要保存到另一个模型。

+0

我试图与'''array_collapse'''使多维数组为单一阵列,并检查我的关键是空的。我想,这可能是获得我想要的解决方案。 – Nomadme

回答

0

在laravel 5.2可以验证阵列

$validator = Validator::make($request->all(), [ 
    'office_fees.*.description' => 'required', 
]); 

来源:Laravel documentation

1

不知道你正在寻找,但:

empty($data['office_fees'])

检查数组isset和不是空的。如果你想查看一个空数组试试这个:

if (is_array($data['office_fees']) && !empty($data['office_fees']))

+0

我想检查一下'description'或'fee'是否为空。目前,这将始终返回'''true''',因为我总是会在'office_fees' – Nomadme