我构建了一个表单,我必须根据彼此相关的输入创建对象数组,如下所示:
{
"name_node":{"type":"input","name":"name","validation":"required, alpha numeric"},
"content":{"type":"textarea","name":"contentco","validation":"required, alpha numeric"}
}
我使用 Jquery 构建了这个数组,然后将其保存到表单中名为“inputs”的隐藏输入字段中。因此,当我提交表单时,我可以检索上面的对象,例如:
$this->input->post('inputs');
我需要做的是将之前的对象保存为以下格式
[inputs] => Array(
[name_node] => Array(
[type] => input
[slug] => name_node
[name] => name
[validation] => Array
(
[0] => required
[1] => alpha numeric
)
)
[content] => Array
(
[type] => textarea
[slug] => content
[name] => content
[validation] => Array
(
[0] => required
[1] => alpha numeric
)
)
)
最佳答案
您可以通过使用 json_decode() 在 PHP 中实现并使用 foreach 循环格式化数组,如下所示。
$str = '{
"name_node":{"type":"input","name":"name","validation":"required, alpha numeric"},
"content":{"type":"textarea","name":"contentco","validation":"required, alpha numeric"}
}';
$arr = json_decode(($str), true);
foreach ($arr as $k => $v) {
$newArray[$k] = $v;
$newArray[$k]['slug'] = $k;
if(isset($v['validation'])) {
$newArray[$k]['validation'] = explode(",",$v['validation']);
}
}
print_r($newArray);
关于javascript - 将对象数组保存到 codeigniter 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20740551/