![](/img/trans.png)
[英]Error PHP 7.4 Trying to access array offset on value of type bool in
[英]Error Trying to access array offset on value of type bool in PHP 7.4
我有這樣的代碼:
// load the file
self::$_list = array();
$handle = fopen($file, 'r');
while (!feof($handle)) {
$line = fgetcsv($handle);
if (null != $line && count($line)!=2) continue;
self::$_list[trim($line[0])] = trim($line[1]);
}
fclose($handle);
但是當我測試時,我得到了這樣的錯誤:
注意:嘗試訪問 bool 類型值的數組偏移量
錯誤是指腳本self::$_list[trim($line[0])] = trim($line[1]);
.
正如您可以在“ Return
部分中閱讀的那樣:
如果提供了無效句柄,fgetcsv() 將返回 NULL,或者在其他錯誤(包括文件結尾)時返回 FALSE。
所以問題是$line[0]
當你到達文件末尾時,因為$line
是false
。
請考慮查看該頁面上的以下示例,並將這些示例用作“指南”來重寫您的 function, if
至少添加到中間以檢查該條件,例如:
if ( null != $line && count($line) != 2 || $line === false ) continue;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.