PHP - unlink не работает должным образом

0

Я пытаюсь удалить файлы cookie с помощью функции unlink() и он не работает должным образом

Я пробовал этот код (нашёл на php.net)

<?php array_map('unlink', glob("some/dir/*.txt")); ?>

Но он не удаляет последний созданный файл...

  • 0
    У вашего пользователя веб-сервера есть соответствующие разрешения?
  • 0
    Do var_dump(glob("some/dir/*.txt")); возвращает какие-нибудь файлы?
Показать ещё 4 комментария
Теги:
cookies
unlink

2 ответа

1
Лучший ответ

Существует несколько причин, по которым ваш код может быть сбой в одном файле, но не в других. Это, похоже, не логическая ошибка, но первое, что я хотел бы сделать, это попытаться переписать это как цикл, а не использовать array_map().

Затем я буду проверять ошибку после каждого вызова unlink() если он возвращает FALSE: if (!(unlink($file)) print_r(error_get_last()); и посмотреть, что система сообщает вам о том, что происходит.

  • 0
    Я пробовал с циклом «for», прежде чем пытаться с array_map, и каждый вызов unlink возвращает «true». Я также пытался вызвать другой файл, чтобы удалить мои куки, и это сработало ...
  • 0
    Затем я распечатал бы каждое имя файла, когда оно перестало быть связанным, и подтвердил, что то, что осталось, находится в списке тех, которые, как он говорит, успешно не связано. Если это так, то проверьте дату создания файла, чтобы убедиться, что он не был воссоздан после того, как вы удалили его.
Показать ещё 1 комментарий
1

Я не уверен в% 100, но, возможно, вам нужно включить путь:

<?php
    foreach(glob("some/dir/*.tmp") as $file)
    {
        unlink("some/dir/".$file);
    }
  • 0
    Тот же результат, 1 файл все еще здесь ...

Ещё вопросы

Сообщество Overcoder
Наверх
Меню