类stdClass的对象无法转换为字符串
public function get($id = null)
{
$terms = array('id' => $id);
$blog = $this->model->getBy($terms);
// $blog => (object) [id => 1, category_id => 3]
$fix->id = $blog->id;
// $fix->category = $this->getCategory($blog->category_id); // Not work
$fix->cat_or_something = $this->getCategory($blog->category_id); // Work
return $fix;
// $fix => (object) [id => 1, cat_or_something => [name => Some Category]]
}
如果我把$fix->category
换成$fix->cat_or_something
,就可以了。$fix->category
有点奇怪。
2条答案
按热度按时间3hvapo4f1#
问题出在你的代码中的其他地方。你很可能试图在某个地方回显$fix-〉category,因为它包含一个对象,所以你得到了一个错误。
编辑2:
如果你在屏幕截图中查看代码的第三个版本(http://d.pr/i/4Hn7),你会看到错误发生在print_r之后,所以在将其分配给$fix-〉category之后也是如此-所以这不是问题所在
错误发生在DB_active_rec.php中。这是我的版本(2.0)中的_where()方法。所以这意味着你试图在where子句的某个地方使用$fix-〉类别...试着检查一下。
tyg4sfes2#
很抱歉没有更早地提供解决方案来解决导致我的问题的挑战。
这个问题是由两个相互关联的问题引起的:
幸运的是,通过重新安装PHP解决了这个问题,这涉及到安装和集成一个更新的兼容版本。