javascript - 将对象数组保存到 codeigniter 中

标签 javascript php jquery arrays codeigniter

我构建了一个表单,我必须根据彼此相关的输入创建对象数组,如下所示:

{
 "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);

Working Demo

关于javascript - 将对象数组保存到 codeigniter 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20740551/

相关文章:

javascript - 使用链接的 css 时,Jssor Slider Bullet 显示在顶部

javascript - 使用 JavaScript 验证表单

php - doctrine2 使用过多的 SQL 查询加载一对多关联

javascript - 是什么导致了这个额外的 "undefined"?

javascript - jQuery fadeToggle 元素

php - 没有从模型查询中获得预期的输出。我应该使用什么查询?

javascript - 使文本框出现在所选单选按钮旁边

javascript - 谷歌地图经纬度定义两次

php - 从db2中选择并插入mysql中不存在的地方

php - 在 MySQL 查询中使用 now() 函数