問題重現
{
"message": "Trying to access array offset on value of type null",
"status_code": 500,
"debug": {
"line": 205,
"file": "/vendor/擴展B/Info.php",
"class": "ErrorException",
"trace": [
"#0 /vendor/擴展B/Info.php(205): Illuminate\\Foundation\\Bootstrap\\HandleExceptions->handleError(2, 'Trying to acces...', '/vendor/...', 205)",
"#1 /vendor/擴展B/Tpl.php(53): \Info::workflowInfo(54, 'contract', Array)",
…………
"#49 {main}"
]
}
}
出現原因
主要原因是版本7.4以后PHP解析器會對null類型的下標訪問直接報錯
背景:
laravel框架
同時使用了擴展A和擴展B
擴展A要求 php>=7.4,同時擴展B的對null類型的下標訪問不兼容php7.4
解決問題
修改擴展B不太現實,畢竟擴展B中有太多的對null類型的下標訪問。
一勞永逸修改法,平時開發中不推薦使用
app/Providers/AppServiceProvider.php boot 方法里面添加 error_reporting (E_ERROR);

