laravel-5.5 - Laravel 5.5 - 验证数组内对象内的字符串
问题描述
我有一个要求:
`array:2 [
"alt_tags" => "1"
"name_pattern" => array:2 [
0 => "{"label":"Main Title","value":"main_title"}"
1 => "{"label":"Store Name","value":"store_name"}"
]
]`
在 Request 类中,我尝试通过以下方式验证对象内的行:
`$labels = \implode(',', [
'Main Title',
'Store Name',
]);
$values = \implode(',', [
'main_title',
'store_name',
]);
return [
'alt_tags' => 'required|boolean',
'name_pattern' => 'required|array|min:0|max:2',
'name_pattern.*.label' => "sometimes|string|in:{$labels}",
'name_pattern.*.value' => "sometimes|string|in:{$values}",
];`
但是由于字符串在对象内部,因此无法通过file_name_pattern. *.label
:
data_get(request()->all(), 'name_pattern.0') // "{"label":"Main Title","value":"main_title"}"
data_get(request()->all(),'name_pattern.0.label'); // return NULL
解决方案
推荐阅读
- performance - 我的超时错误(swi-prolog)的根源在哪里?
- python - 尝试在 Azure 中使用 HttpClient 类
- r - R如何划分每个因子级别对应的行
- java - 如何使用 EasyMock 模拟 HttpUrlConnection.getResponseCode() 方法
- c# - 使用 Asp.net Core Web Api 反应本机
- android - 如何使用导航架构组件从 ViewPager 页面片段访问主机片段
- eclipse - 服务器找不到资源
- java - FXMLLoader 引发“未设置位置”,即使文件存在于位置
- groovy - Katalon 可以断言响应 = 数据?
- python - 根据另一个数据框对数据框的列和行进行排序