参考下述文章。
另外还有php8,lavarel8,mysql8,Trying to get property 'id' of null,如果是php7则是Trying to get property 'headers' of non-object。但是dd()却成功显示。return就不行。
全部删除重写中间件看看。因为我正在写middleware。全部代码删除了也是Trying to get property 'headers' of non-object。很明显是没有写response.
rying to get property 'headers' of non-object是因为返回的不是response.但是:从数据库返回的$curr_menu是object,if(!$curr_menu)的判断却不返回false,照常执行,换了PHP版本到7.3.4也不行。
如果我没有其他地方搞错,那就是laravel8的语法判断不一样?问题是语法判断不是PHP的工作吗?
$curr_menu=DB::table('menus')->first();
dd(isset($curr_menu));
if(!isset($curr_menu)){
return response('该方法不存在');
}
结果是isset()返回false,而dd是true.
???为什么?