尝试返回atribute给出:PHP尝试获取非对象的属性
这是一个拉威尔项目 鉴于以下结果:尝试返回atribute给出:PHP尝试获取非对象的属性,php,laravel,Php,Laravel,这是一个拉威尔项目 鉴于以下结果: <? print_r($definition->term); ?> 我很难用英语来理解attibute的“术语” 我遇到以下错误:试图获取非对象的属性 我如何访问attibute术语以获得单词测试? 奇怪的是,代码似乎在php5.6上运行,我在php7中遇到了这个问题 ----更新--- <? print_r($definition); ?> 它过去用于打印术语测试,现在它不: {{ $definition->term-
<? print_r($definition->term); ?>
我很难用英语来理解attibute的“术语”
我遇到以下错误:试图获取非对象的属性
我如何访问attibute术语以获得单词测试?
奇怪的是,代码似乎在php5.6上运行,我在php7中遇到了这个问题
----更新---
<? print_r($definition); ?>
它过去用于打印术语测试,现在它不:
{{ $definition->term->term) }}
这很有效
{{ $definition->submitter_name }}
尝试建议答案
$definition->term->attributes['term']代码>但它显示错误:试图获取非对象的属性缺少属性
属性,它是一个数组:
echo $definition->term->attributes['term'];
我不知道Laravel,你也没有显示你在评论中提到的foreach循环,但是编辑中的新对象将被访问,如下所示:
echo $definition->relationships['term']->attributes['term'];
除非Laravel代码中有一些神奇的\u get()
或其他东西。我遇到了一个错误:试图通过print\r
输出获取非object的属性,这是访问它的方式,否则其他一些东西是错误的。是的,有点奇怪,我以前尝试过数组,但没有成功,甚至没有打印($definition->term->attributes);不起作用。这是来自JSON还是您是如何获取对象的?另外,可能在5.6中,错误报告/显示未启用,因此您不会看到错误。
{{ $definition->submitter_name }}
echo $definition->term->attributes['term'];
echo $definition->relationships['term']->attributes['term'];