Php Laravel:对象无法访问其属性
假设我有一个函数,它返回一个对象,其中一个参数设置为某个特定值:Php Laravel:对象无法访问其属性,php,laravel,Php,Laravel,假设我有一个函数,它返回一个对象,其中一个参数设置为某个特定值: public function search($jobsdone, $date) { foreach ($jobsdone as $jd) { if ($jd->date_worked == $date) return $jd; } } 打印搜索($jobsdone,$key)会产生以下结果: object(JobDone)#378 (19) { ... ["attributes":
public function search($jobsdone, $date)
{
foreach ($jobsdone as $jd) {
if ($jd->date_worked == $date) return $jd;
}
}
打印搜索($jobsdone,$key)会产生以下结果:
object(JobDone)#378 (19) {
...
["attributes":protected]=>
array(9) {
["id"]=>
int(3593)
["user_id"]=>
int(13)
["object_id"]=>
int(99)
["job_id"]=>
int(130)
["date_worked"]=>
string(10) "2013-10-01"
["min_from"]=>
int(780)
["min_to"]=>
int(1080)
}
...
}
但是,如果我想打印出search($jobsdone,$key)->id,我得到的只是一条错误消息:
Trying to get property of non-object
这里可能缺少什么?您的
搜索功能并不总是返回对象。因此,当您的搜索无法找到$jobdone
对象时,尝试获取非对象的属性时会出现错误。真不敢相信我花了一个小时没有注意到这一点。非常感谢。