代码:
PHP版本:7.4.1
错误行:
if($this->allianceData['ally_owner'] == $USER['id']) {
该错误意味着您的查询没有收到行。然后他给出一个布尔值。然后尝试访问布尔值。你可以试试这个:
if($this->allianceData['ally_owner'] ?? 'default value' == $USER['id'] ?? 'default value') {
由于我不知道你的全部代码,我认为你已经检查了用户是否经过了身份验证?要么通过中间件,要么在上面的代码中。
您可能正在尝试访问数组中不存在的值,您可以尝试使用print_r($this->allianceData);
和print_r($USER);
来查看排列是如何组成的。
我最近遇到了这个问题,对我来说,解决方案非常简单,我想我只需要记下它,希望能省去别人一堆一无所获的搜索!
如果您的错误显示在网站后端、表单中或设置页面上,这可能会对您有所帮助。
本质上,我们请求的是数组的一个元素,但在我的例子中,数组还没有创建,我在显示错误的字段中写入,然后保存了表单。因此,创建数组,将值添加到数组中,以备将来调用。重新加载时,页面工作正常!