gpt4 book ai didi

php - 在 Codeigniter 中使用 $this->db->get()->row_array()

转载 作者:行者123 更新时间:2023-12-04 05:53:48 24 4
gpt4 key购买 nike

我正在使用 $this->db->get()->row_array()在 Codeigniter 中从数据库中获取单行结果。我想将所有不同查询的结果合并到一个数组中 $results ;所以我不想输入列名来获得单行的结果......

PHP代码

// Query 1
$results = array();
$this->db->select('COUNT(listing_id) as num')
->from('listings')
->where('city', $city);
$result = $this->db->get()->row_array();
$results['num'] = $result['num'];

下面这两行在我看来可以用更短的方式来写。在那儿?谢谢!
$result = $this->db->get()->row_array();
$results['num'] = $result['num'];

想要的解决方案
$results['num'] = first_element_of($this->db->get()->row_array());会很棒!

最佳答案

不知道 codeigniter 并且从未使用过它,但这可能有效

// Query 1
$results = array();
$this->db->select('COUNT(listing_id) as num')
->from('listings')
->where('city', $city);

$results['num'] = $this->db->get()->row()->num;

诀窍是您可以链接对象成员访问。你不能用数组( $foo->row_array()['num'] )来做到这一点,所以这就是问题所在。如果你使用的是旧的 mysql 你应该看看 mysql_result .没有与此等效的 mysqli。

根据 where() 的返回值,您可以尝试将其进一步缩短为
$results = array('num' => 
$this->db->select('COUNT(listing_id) as num')
->from('listings')
->where('city', $city)
->get()
->row()
->num
);

关于php - 在 Codeigniter 中使用 $this->db->get()->row_array(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9760256/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com