PHP unlink для символической ссылки, указывающей на фактически не существующий файл, не работает

У меня странная проблема с unlink.

когда я использую функцию unlink(), она удаляет символическую ссылку, которая правильно связана с существующим файлом. Но для файла символической ссылки, который на самом деле указывает на несуществующий файл, это не работает.

Я гуглил здесь и там, но не могу найти правильную причину.

Рабочий процесс выглядит следующим образом: первый файл PHP удаляет исходный файл (который запускается запросом ajax), а затем второй файл php пытается удалить символическую ссылку, указывающую на файл, только что удаленный первым файлом PHP. Но второй файл PHP не может удалить символическую ссылку.

Есть идеи, почему такое происходит?


person Codemole    schedule 16.12.2015    source источник
comment
Какое исключение выбрасывается?   -  person Jake Bathman    schedule 16.12.2015
comment
@Jake B никаких исключений не выбрасывается .. хотя я использовал try catch, ничего не получил ...   -  person Codemole    schedule 29.12.2015


Ответы (1)


Ну, это из-за функции file_exists(). Прежде чем отсоединить файл, он проверяет, существует ли файл, используя функцию file_exists().

Но проблема в том, что эта функция возвращает false, если символическая ссылка недействительна.

person Codemole    schedule 30.12.2015