Modelクラスでは、単一行を返すのにreturn $query->row();
を使用し、複数行を返すときにはreturn $query->result();
を返します。Codeigniterの返り値と行
単一のページでは、1つの行と複数の行を別々の2つのテーブルから返す必要があります。
表users
には、ユーザー名、氏名、電子メールアドレスなどの一般的な情報が含まれています。 表user_links
には、それぞれのユーザーから送信されたリンクが含まれており、各ユーザーに複数の行があります。私のコントローラで
マイクエリ
$this->db->select('*');
$this->db->from('users');
$this->db->join('user_links', "user_links.user_id = users.user_id");
$this->db->where('users.user_id', $user_id);
$this->db->where('user_links.user_id', $user_id);
$query = $this->db->get();
return $query->row();
私は固有のユーザーIDを含む第三URLセグメントであること
$user_id
、
$data['row'] = $this->User_model->user_read($user_id);
で私のビューでクエリをロードします。
は最後に、私の見解で、私はこれは、単一の行のために動作しますが、どのように私は、ユーザーリンクのforeach
ループを作成することができますecho $row->first_name;
で行を検索しますか?目的は、単一行のループを回避し、複数の行を検索するためだけにループを使用することです。
ありがとう!私は前に2つのクエリを使用していましたが、コントローラとビューの両方から送信しましたが、結合はより専門的に見えました。 – CyberJunkie