Codeigniter - 在布尔值上调用成员函数 result_array() - 本地设置安装错误

Posted

技术标签:

【中文标题】Codeigniter - 在布尔值上调用成员函数 result_array() - 本地设置安装错误【英文标题】:Codeigniter - Call to a member function result_array() on boolean - Local setup Installation error 【发布时间】:2020-07-13 08:20:11 【问题描述】:

作为一名学习者,我需要在 codeigniter 方面的帮助。我正在尝试进行本地设置,但它给出了以下错误。

致命错误:在第 1144 行的 xampp\htdocs\test\application\models\Homemodel.php 中的布尔值上调用成员函数 result_array()

return $result = $this->db->get()->result_array();

感谢您的帮助。祝你幸福!!

【问题讨论】:

看起来 $this->db->get() 返回 true 或 false。 谢谢!我是编码新手?你能告诉我我测试的字符串是真还是假,但它显示相同的错误.. 对不起。我不知道代码点火器。而且我不确定你为什么选择它来学习。 将我的网站从 WP 切换到 CI 并想学习框架 【参考方案1】:

CodeIgniter 有很好的文档

访问:https://codeigniter.com/user_guide/database/examples.html

单一结果的标准查询

“此方法返回单个结果行。如果您的查询有多行,则仅返回第一行。结果作为对象返回。”

$query = $this->db->query('SELECT name FROM my_table LIMIT 1');
$row = $query->row();
echo $row->name;

结果数组 "此方法将查询结果作为对象数组返回,失败时返回空数组"

$query = $this->db->query("YOUR QUERY");

foreach ($query->result() as $row)

    echo $row->title;
    echo $row->name;
    echo $row->body;

【讨论】:

【参考方案2】:

尝试替换:

return $result = $this->db->get()->result_array();

return $this->db->get() ? $this->db->get()->result_array() : [];

命名三元运算符,作用类似于if statement:

if ($this->db->get())  else 

出现此错误的原因是$this->db->get() 返回一个布尔值(真/假)

【讨论】:

@Sum,不客气,如果它解决了你的问题,你可以接受答案

以上是关于Codeigniter - 在布尔值上调用成员函数 result_array() - 本地设置安装错误的主要内容,如果未能解决你的问题,请参考以下文章

在布尔值上调用成员函数 attach() - Laravel

在 [重复] 中调用布尔值上的成员函数 execute()

PHP:致命错误:未捕获的错误:在布尔值上调用成员函数 execute() [重复]

函数不起作用:PHP 致命错误:在布尔值上调用成员函数 bind_param()

函数if if在布尔值上

Codeigniter:在非对象上调用成员函数 result_array()