0

配列をループして行 (値) を SQL クエリの条件として使用しようとしていますが、行をループできないようです。form_name = ' V243823'then が停止する最初の行のデータのみを出力します。すべての行が必要なので、合計 3 つの配列が返されます。

キャンパス フォーム配列

[0] => Array
        (

            [PQ_Lookup] => V243823
            [RL_Lookup] => B3823RL
            [MA_Lookup] => F356823
        )

クエリ

    foreach( $campus_forms[0] as $key => $row )
    {
    $this->db->select('form_deadline,form_url,form_fullname'); 
    $this->db->from('form_deadlines');

    $this->db->where('form_name', $row);
        $query = $this->db->get();

         if ($query->num_rows() > 0)
            {
                $campus_forms = $query->result_array();
                  return $campus_forms;
            }
      }
4

1 に答える 1

1

最初のループでは、この理由で次のループを実行しません。foreach ループの後にデータを返します。すべてのループでデータを配列に保持できます。次の方法で実行できます。

$form_data_array = array();

foreach( $campus_forms[0] as $key => $row )
    {
    $this->db->select('form_deadline,form_url,form_fullname'); 
    $this->db->from('form_deadlines');

    $this->db->where('form_name', $row);
        $query = $this->db->get();

         if ($query->num_rows() > 0)
            {
                $campus_forms = $query->result_array();
                 // return $campus_forms;
$form_data_array[] = $campus_forms;
            }
      }
return $form_data_array;
于 2013-08-29T20:51:32.930 に答える