Я работаю над проектом CakePHP 4, используя CSV League для чтения CSV-файла. Содержимое моего файла:
EMAIL
[email protected]
[email protected]
...
Я следую этому примеру: в моем классе контроллера я определяю функцию фильтр по электронной почте:
function filterByEmail(array $record): bool
{
return (bool) filter_var($record[0], FILTER_VALIDATE_EMAIL);
}
Внутри приватной функции readFileImport($filename):
$reader = Reader::createFromPath('path_to_my_csv_file', 'r');
$stmt = (new Statement())
->offset(1)
->limit(10)
->where('filterByEmail');
$records = $stmt->process($reader);
Я получаю сообщение об ошибке. Аргумент 1, переданный в League\Csv\Statement::where(), должен быть вызываемым, задана строка. Что случилось? Любая помощь будет оценена по достоинству.
filterByEmail
как метод класса контроллера, как иreadFileImport
? - person ndm   schedule 24.12.2020