Я хотел бы удалить файл из папки в PHP, но у меня есть только путь к этому файлу, было бы нормально дать путь к отключению? Например
unlink('path/to/file.txt');
Если это не сработает, единственный способ избавиться от этих файлов – это создать файл .php в каталоге path / to / и включить его каким-то образом в мой файл, чтобы вызвать метод для удаления файла, не так ли?
Посмотрите на документацию unlink
:
bool unlink ( string $filename [, resource $context ] )
а также
имя файла
Путь к файлу.
Таким образом, он принимает только строку как имя файла.
Убедитесь, что файл достигнут с помощью пути от места выполнения сценария. Это не проблема с абсолютными путями, но у вас может быть один с относительными путями.
Получил простой способ для вашего вопроса
Используйте этот код для удаления файла из папки
$_SERVER['DOCUMENT_ROOT']
это можно использовать внутри функции разблокировки
работающий код
unlink($_SERVER['DOCUMENT_ROOT'] . "/path/to/file.txt");
unlink отлично работает с дорожками.
Описание bool unlink (строка $ filename [, resource $ context])
Удаляет имя файла. Подобно функции Unink C unlink (). При сбое генерируется ошибка уровня E_WARNING.
имя файла
Path to the file.
В случае возникновения проблем с правами, запрещающими ошибку, это иногда возникает, когда вы пытаетесь удалить файл, который находится в папке выше в иерархии, в ваш рабочий каталог (т. Е. При попытке удалить путь, начинающийся с «../») ,
Поэтому, чтобы обойти эту проблему, вы можете использовать chdir () для изменения рабочего каталога в папку, в которой находится файл, который вы хотите отключить.
<?php $old = getcwd(); // Save the current directory chdir($path_to_file); unlink($filename); chdir($old); // Restore the old working directory ?>
Вы можете использовать unlink с дорожкой.
Вы также можете отключить связь в каталоге, если вы его сначала опорожнили.
Вот руководство: http://php.net/manual/en/function.unlink.php
Не забудьте проверить, существует ли файл, или вы получите сообщение об ошибке, если это не так:
$file_with_path = $_SERVER['DOCUMENT_ROOT'] . "/path/to/file.txt"; if (file_exists($file_with_path)) { unlink($file_with_path); }
Согласно документации, unlink
принимает строковый параметр для пути.
http://php.net/manual/en/function.unlink.php
Другими словами … у вас есть то, что вам нужно, чтобы удалить файл.
Не только это нормально, это единственный способ удалить файл на PHP (помимо системных вызовов).
Мы можем использовать этот код
$path="images/all11.css"; if(unlink($path)) echo "Deleted file ";
if (isset($_POST['remove_file'])) { $file_path=$_POST['fileremove']; // chown($file_path, 'asif'); // echo $file_path; if (file_exists($file_path)) { unlink($file_path); echo "file deleted<br> the name of file is".$file_path.""; # code... } else echo "file is not deleted ".$file_path.""; # code... }