0

たぶんそれはばかげた質問です。私は codeigniter を学習しようとしていますが、このエラーが発生しました:

Invalid argument supplied for foreach()

ifステートメントでこのエラーが発生したと確信しています:

$q = $this->db->query("SELECT * FROM users");
if ($q->num_rows() > 0) {
    foreach ($q->result() as $row) {
        $data[] = $row;
    }
    return $data;
}

usersテーブルに少なくとも「1」または「複数」のユーザーが存在する場合、 if ステートメントはTRUEを返しますか?

foreach コードを else ステートメントに移動すると、次のようになります。

$q = $this->db->query("SELECT * FROM users");
if ($q->num_rows() > 0) {

} else {
    foreach ($q->result() as $row) {
        $data[] = $row;
    }
    return $data;
    }

Web は正常に実行され、すべてのユーザーにエコーされますが、これはなぜですか? if ステートメントがFALSEを返すのはなぜですか?

4

0 に答える 0