Laravel或Where返回php致命错误
这很奇怪 在我的开发机器(vagrant w/Debian Wheezy,PHP 5.5.7)上,以下雄辩的查询工作正常:Laravel或Where返回php致命错误,php,laravel,laravel-4,eloquent,fatal-error,Php,Laravel,Laravel 4,Eloquent,Fatal Error,这很奇怪 在我的开发机器(vagrant w/Debian Wheezy,PHP 5.5.7)上,以下雄辩的查询工作正常: Company::whereUserId($user_id)->orWhereHas('users', function($q) use ($user_id) { $q->where('users.id', '=', $user_id); }); 我的“公司”模型定义了这种关系: public function users() {
Company::whereUserId($user_id)->orWhereHas('users', function($q) use ($user_id) {
$q->where('users.id', '=', $user_id);
});
我的“公司”模型定义了这种关系:
public function users()
{
return $this->belongsToMany('User', 'company_user', 'company_id', 'user_id');
}
但是,在生产过程中,同一操作系统和PHP版本出现了一个致命的PHP错误:
PHP Fatal error: Call to a member function getQuery() on a non-object in /var/www/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Relations/BelongsToMany.php on line 247
我被难住了。我尝试了just->has('users),这很有效,因此我知道正在使用国外的模型。但奇怪的是,我在每个环境中都得到了不同的结果!有什么想法吗?您的生产操作系统/PHP的规格是什么?PHP版本=>5.4.4-14+deb7u7&&Debian 3.2.51-1 x86_64I最终升级到PHP5.5.7,问题似乎已经解决。不知道为什么。