Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在PHP7.4中,尝试访问bool类型值的数组偏移量时出错_Php - Fatal编程技术网

在PHP7.4中,尝试访问bool类型值的数组偏移量时出错

在PHP7.4中,尝试访问bool类型值的数组偏移量时出错,php,Php,我有这样一个代码: // 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]); } fc

我有这样一个代码:

// 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);
但当我测试时,我得到了如下错误:

// 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类型值的数组偏移量

该错误涉及脚本自身:$\u list[trim$line[0]]=trim$line[1]

正如您在返回部分所读到的:

如果提供了无效句柄,fgetcsv将返回NULL;如果出现其他错误(包括文件结尾),fgetcsv将返回FALSE

因此,当到达文件末尾时,问题是$line[0],因为$line是false

请考虑查看下面页面上的示例,并使用这些示例作为重写函数的指南,或者如果要检查该条件,请添加到中间,如:

if ( null != $line && count($line) != 2 || $line === false ) continue;
正如您在返回部分所读到的:

如果提供了无效句柄,fgetcsv将返回NULL;如果出现其他错误(包括文件结尾),fgetcsv将返回FALSE

因此,当到达文件末尾时,问题是$line[0],因为$line是false

请考虑查看下面页面上的示例,并使用这些示例作为重写函数的指南,或者如果要检查该条件,请添加到中间,如:

if ( null != $line && count($line) != 2 || $line === false ) continue;

很抱歉,7.4不推荐使用数组?不,没问题。没有提到不推荐,抱歉,但是在7.4上不推荐使用数组?不,没问题。没有提到反对