我面临此错误 无法使用 mysqli 类型的对象作为数组



控制器:

<?php
namespace AppControllers;
use CodeIgniterController;
use AppModelsServices;
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>

我面临这个错误

不能将mysqli类型的对象用作数组

如何解决这个问题。

将控制器更改为:

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

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

这个答案假设您使用的是codeigniter 4模型,而不是自定义模型,因为您没有发布该模型。

最新更新