jack-theripper / yandex

PHP SDK для работы с Яндекс Диском yandex disk

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Невозможно удалить локальный файл после загрузки

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 и добавил в него закрытие стрима.