Невозможно удалить локальный файл после загрузки
savolgin opened this issue · comments
При попытке удалить файл локально после его загрузки
...
$resource->upload($fileName);
...
unlink($fileName);
В логах выводится ошибка о том что файл заблокирован
ErrorException [ Warning ]: unlink(...): Text file busy
В итоге файл не удаляется.
php 7.1
версия пакета 2.0.1
Библиотека не блокирует файлы и не мешает удалению. Ошибка относится к операционной системе, специфичный случай где файл считается сегментом к процессу.
Сомневаюсь что тебе это поможет - смотри описание в Readme к патчу, ты можешь принудительно вызвать $stream->close() в обработчике uploaded
Да, т.к. эти исправления в мастере а у меня php7.1 воспользоваться этим не получится. Спасибо за быстрый ответ.
В итоге создал наследника класса \Arhitector\Yandex\Disk\Resource\Closed
скопировал в него метод upload и добавил в него закрытие стрима.