我正在尝试在Mysql中保存表单数据。但嵌套数组导致问题。
Array ( [name] => Custom Project
[number] => 08883
[key] => Array ( [0] => Server Cost
[1] => Domain Cost
[2] => Design Charges,
)
[value] => Array ( [0] => 098
[1] => 765
[2] => 787
)
)
我正在使用$this->db->insert('invoice',$array)
,它正在插入数据,没有嵌套数组。
有没有办法可以将这个嵌套数组与上面的数组分开,然后将这个嵌套数组保存到另一个只有两列key
和value
答案 0 :(得分:2)
您可以使用array_combine
创建密钥对值:
function save_value($array)
{
$key_value = array_combine($array['key'], $array['value']);
$this->db->insert('table_name', $key_value);
}
答案 1 :(得分:0)
我使用了非常简单的方法,我将一个数组推送到另一个数组,因为结果将在Codeigniter插入方法中处理。
//Item description
$description=$_POST['key'];
//item amount
$amount=$_POST['value'];
$big_array=array();
for($i=0; $i<sizeof($description); $i++){
$small_array=array('description'=>$description[$i],'amount'=>$amount[$i]);
array_push($big_array,$small_array);
}
//adding data into model
$this->my_Model->InsertData($big_array);