2016-07-20 89 views
-2

有我的代碼:如何插入多維數組在笨數據庫

Array 
(
    [head_family] => 1234 
    [house_name] => abc 
    [house_no] => 12 
    [relationship] => son 
    [family_ms_id] => KERTVMPMJF318 
    [member_ms_id] => KERTVMPMJM318 
) 
Array 
(
    [head_family] => varun 
    [house_name] => nila 
    [house_no] => 12 
    [relationship] => son 
    [family_ms_id] => KERTVMPMJF318 
    [member_ms_id] => KERTVMPMJM318 
) 

控制器:

$this->Enrollment_model->add_member($appended); 

型號:

function add_member($appended) { 
     $this->db->insert('members', $appended); 
     return $this->db->insert_id(); 
} 
+0

檢查http://stackoverflow.com/questions/17875706/how-to-create-codeigniter-batch-insert-array – Saty

+0

'$ this-> db-> insert_batch' – splash58

+0

請讓我們知道你想要做什麼... –

回答

0

使用$this->db->insert_batch();

您可以將數組或對象傳遞給函數。下面是使用的數組的例子:

$appended= array(
     array(
      'head_family' => '1234', 
      'house_name' => 'abc', 
      'house_no' => '12' 
     ), array(
      'head_family' => 'varun', 
      'house_name' => 'nila', 
      'house_no' => '12' 
     ) 
    ); 

你的模型

  function add_member($appended) { 
      $this->db->insert_batch('members', $appended); 
      } 

第一個參數將包含表名,第二個是值的數組。

http://www.codeigniter.com/user_guide/database/query_builder.html#inserting-data


你的控制器$this->Enrollment_model->add_member($appended);

+0

請在你的答案中使用ALL CAPS 。 –

0

一個很好的做法將被插入的JSON字符串。 因此,首先創建一個類型的數據庫列作爲LONGTEXT

然後在模型中使用此:

function add_member($appended) { 
    $json_array = json_encode($appended); 
     $this->db->insert('members', $json_array); 
     return $this->db->insert_id(); 
} 

而且從數據庫中獲取的時候:

$appended = json_decode($json_array);