как вы можете прочитать здесь в разделе Return
:
fgetcsv () возвращает NULL, если указан недопустимый дескриптор, или FALSE для других ошибок, включая конец файл.
Таким образом, проблема заключается в $line[0]
, когда вы дойдете до конца файла, потому что $line
это false
.
Пожалуйста, обратите внимание на примеры ниже на этой странице и используйте эти примеры в качестве «руководства», чтобы переписать вашу функцию, или, по крайней мере, добавьте к середине if
что-нибудь, чтобы проверить это условие, например:
if ( null != $line && count($line) != 2 || $line === false ) continue;