2017-06-26 9 views
0

Yii2では、親と子の2つのテーブルを考えてみましょう。子が親との関係を持っている場合、書き込みがクエリに参加しながら、それがCodeigniter:yii2のような連想配列

Parent[id => 1, 
    firstname => "John", 
    lastName => "Miller" 
    child => [id : 1, 
       address : some address, 
       contact number : some nubmer 
    ] 
] 

ような結果を生成します。しかしCodeignitorで、それはMySQLのクエリの出力と同じように表示されます。 CodeIgnitorで私の要件を達成する方法。

ありがとうございました。

+0

[MY_Model](https://github.com/avenirer/CodeIgniter-MY_Model)の内容を確認してください。 – Tpojka

答えて

0

これを達成するにはさまざまな方法があります。 あなたは親のためのクエリを実行し、その後サイクルチャイルズ

$query_parent = $this->db->query($" 
    SELECT * 
    FROM parent 
    WHERE id = ?", [$parent_id]); 

if($query_parent !== FALSE && $query_parent->num_rows() > 0) 
{ 
    $result_array_parent = $query_parent->result_array(); 
    $query_parent->free_result(); 

    foreach ($result_array_parent as $k_p => $v_p) 
    { 
     $query_child = $this->db->query($" 
      SELECT * 
      FROM child 
      WHERE id = ?", [$v_p['id']); 

     if($query_child !== FALSE && $query_child->num_rows() > 0) 
     { 
      $result_array_child = $query_child->result_array(); 
      $query_child->free_result(); 

      foreach ($result_array_child as $k_c => $v_c) 
      { 
       $result_array_parent[$k_p]["child_".$k_c] = $v_c; 
      } 
     } 
    } 
} 

または結合クエリを実行して、配列に変換することができます。