我遇到了这个错误 Cannot use object of type mysqli as array

I'm facing this error Cannot use object of type mysqli as array

管理员:

<?php

namespace App\Controllers;
use CodeIgniter\Controller;
use App\Models\Services;

class Detail extends Controller
{
    public function nadeem($id)
    {
       $model= new Services();
       $data = $model->select('text','title','image')->where('id',$id);
       $nadeem['result'] = $data->get();
       return view('service_detail', $nadeem);              
    }
}

查看:

<!DOCTYPE html>
<html>
<head>
    <title>Service</title>
</head>
<body>



<?php if ($result): ?> 
    <?php foreach ($result as $key => $value): ?> 
         <p><?php echo $value['text'];?></p> 
    <?php endforeach; ?> 
<?php endif; ?>

</body>
</html>

我遇到了这个错误

Cannot use object of type mysqli as array

如何解决这个问题。

将控制器更改为:

$model = new Services();
$nadeem['result'] = $model->select('text, title, image')->where('id',$id)->findAll();
return view('service_detail', $nadeem); 

基本上在您的情况下,您发送给视图的是查询对象而不是查询结果。

此答案假设您使用的是 codeigniter 4 模型而不是自定义模型,因为您没有post模型。