我将这个JSON传入控制器方法:
$data = $request->get('data');
// output
// [{"key": " Needs Trim ", "value": "Two"}, {"key": "", "value": "empty key"}]
它是一个对象数组,我需要在将它插入数据库表之前将其清除:
因此,清理对象数组后的最终结果如下所示:
[{"key": "Needs Trim", "value": "Two"}]
我查看了laravel的数组辅助函数,但是我似乎无法在花费数小时后获得所需的输出。它需要不同的格式,它们的示例显示嵌套数组而不是对象...
知道怎么做到这一点吗?
答案 0 :(得分:1)
试一试:
$data = json_decode('[{"key": " Needs Trim ", "value": "Two"}, {"key": "", "value": "empty key"}]');
foreach ( $data as $key => $el ) {
foreach ( $el as $valKey => $val ) {
if ( empty($val) ) {
unset($data[$key]);
} else {
$el->$valKey = trim($val);
}
}
}