【问题标题】:row_array() codeigniter return the first row onlyrow_array() codeigniter 只返回第一行
【发布时间】:2014-08-12 08:32:24
【问题描述】:

我想从数据库中获取电子邮件地址列表,我在这里尝试过:

在我的模型中:

function get_email_address_by_sector($search_by, $search_field) {
        $this->db->select('*');
        $this->db->like($search_by, $search_field);
        $query = $this->db->get('tb_company');

        $row = $query->row_array();
        return $row['email'];
    }

我想用这个控制器查看数组中的数据:

function get_email_address($search_by, $search_field) {
        $recipients = $this->company_model->get_email_address_by_sector($search_by, $search_field);

        print_r($recipients);
    }

有 2 条记录,必须同时显示。但它只显示第一条记录。 我的代码有什么问题吗?谢谢。

【问题讨论】:

    标签: php codeigniter


    【解决方案1】:

    row_array() 仅返回第一行。如果要返回所有记录,请改用result_array()

    $result = $query->result_array();
    return $result;
    

    【讨论】:

      【解决方案2】:
      $row = $query->row_array(); // it will only one row.
      

      使用result_array()

      $row = $query->result_array();// it will return all rows.

      【讨论】:

        【解决方案3】:
        $result = $query->first_row('array');
        return $result;
        

        【讨论】:

        • 我认为您的意思是:$query->getFirstRow(‘array’) codeigniter.com/user_guide/database/results.html 即使您认为解决方案是基本的/简单的/不言自明的,您仍然应该添加某种解释或支持文本。仅代码的答案在 Stackoverflow 上的价值很低,因为它们对教育/授权成千上万的未来研究人员几乎没有作用。此外,答案仅适用于此页面上的 OP - 它与阅读此页面的每个人交谈,如果它用于关闭一个新问题,它也会与该 OP 和那些研究人员交谈。
        • 事实上,OP 不想要第一行。 OP 想要抓取多行。这会使您的答案不正确(或者说得更温和——这是对不同问题的正确答案)。
        猜你喜欢
        • 2014-12-14
        • 2011-05-15
        • 2020-03-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-07-09
        • 1970-01-01
        相关资源
        最近更新 更多