如何解决尝试访问 Laravel 5.8 中 null 类型值的数组偏移量并升级 php 7.4
升级前一切正常,但自从我升级到 PHP 7.4 后,我的 Web 应用程序返回一个错误,如
尝试访问 null 类型值的数组偏移
这是我的代码
@if(isset($data))
@if(isset($data['panel']) && ($data['panel'] !==null)) // possible problem
@dd($data); // since i put dd here maybe i manage to figure the line code on the line above
@PHP if(isset($data['customer'])) { $customerList = implode(',',$data['customer']); } @endPHP
@PHP if(isset($data['status'])) { $statusList = implode(',$data['status']); } @endPHP
<input type="hidden" name="panelSort" value="@if(isset($data['panel'])){{ $data['panel'] }}@endif" />
<input type="hidden" name="idleRange" value="@if(isset($data['idleRange'])){{ $data['idleRange'] }}@endif" />
<input type="hidden" name="statusSort" value="@if(isset($statusList)){{ $statusList }}@endif" />
<input type="hidden" name="customerDbSort" value="@if(isset($customerList)){{ $customerList }}@endif" />
<input type="hidden" name="severityDbSort" value="@if(isset($data['severity'])){{ $data['severity'] }}@endif" />
<input type="hidden" name="prDbSort" value="@if(isset($data['pr'])){{ $data['pr'] }}@endif" />
<input type="hidden" name="catDbSort" value="@if(isset($data['category'])){{ $data['category'] }}@endif" />
@endif
@endif
可能的问题是 $data[panel] 这是我标记为代码注释
我尝试过的是在 composer.json 上更改 PHP 版本并运行命令
作曲家更新
解决方法
也许您可以尝试以下解决方案。
@php
$customerlist = (isset($data['customer']))? implode(',',$data['customer']):''
$statusList = (isset($data['status']))? implode(',$data['status']):''
@endphp
<input type="hidden" name="panelSort" value="{{ $data['panel'] or '' }}" />
<input type="hidden" name="idleRange" value="{{ $data['idleRange'] or '' }}" />
<input type="hidden" name="statusSort" value="{{ $statusList }}" />
<input type="hidden" name="customerDbSort" value="{{ $customerList }}" />
<input type="hidden" name="severityDbSort" value="{{ $data['severity'] or '' }}" />
<input type="hidden" name="prDbSort" value="{{ $data['pr'] or '' }}" />
<input type="hidden" name="catDbSort" value="{{ $data['category'] or '' }}" />
检查安装的 Laravel 版本是否支持 or
刀片指令。如果此 or
不支持,您可以使用空合并运算符,即 ??
。
参考this
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。