У меня есть программное обеспечение, загружающее каждую минуту jpeg в FTP аккаунт.asd.jpg не является допустимым файлом JPEG - Scandir PHP
В PHP я создаю небольшой PHP-код в crontab, который принимает последний файл JPEG и выполняет графическую обработку. Эта работа прекрасна.
$all_files = scandir("./dir/dir",1);
$last_files = $all_files[0]; //take last jpeg
..etc..
Проблема заключается в том, что иногда PHP код в кронтаб принимает файл, который до сих пор пишется через FTP (так оно неполно) и генерировать эту ошибку:
[01-Jun-2016 15:30:05 Europe/Rome] PHP Warning: imagecreatefromjpeg(): gd-jpeg, libjpeg: recoverable error: Premature end of JPEG file in /home/asdasd/public_html/www.asdasdasdasd.com/asd/asd/cron.php on line 15
[01-Jun-2016 15:30:05 Europe/Rome] PHP Warning: imagecreatefromjpeg(): './dir/dir/153000.jpg' is not a valid JPEG file in /home/asdasd/public_html/www.asdasdasdasd.com/asd/asd/cron.php on line 15
[01-Jun-2016 15:30:05 Europe/Rome] PHP Warning: imagecopyresampled() expects parameter 2 to be resource, boolean given in /home/asdasd/public_html/www.asdasdasdasd.com/asd/asd/cron.php on line 17
Как добавить проверить scandir, чтобы поймать последний полный файл и не писать?
Стандартная практика, чтобы загрузить файл с временным именем (например, 'ASD .jpg.part'), а затем переименуйте, когда передача завершена. Тогда вы только сканируете файлы, заканчивающиеся на .jpg. – iainn
Нет iainn Я не читаю суффикс .part, когда файл написан –