php получает изображение в следующем формате, повторяя $_POST['img']
http://localhost/uploads/images/1533033949-8.jpg
Но почему не работает ссылка —
// Get src.
$img = $_POST["img"];
// Check if file exists.
if (file_exists(getcwd() . $img)) {
// Delete file.
unlink(getcwd() . $img);
echo "Deleted";
}
Я пытался тестировать напрямую, но не работает
unlink($img)
unlink работает в файловой системе, а не с HTTP-URL. И добавление
@CBroe правильно
Сначала получите базовый путь на вашем живом сервере
или вручную укажите базовый путь, как показано ниже
$base_directory = '/home/myuser/';
затем отмените связь с файлом, который вам нужно удалить.
if(unlink($base_directory))
echo "File has been Deleted.";
Я надеюсь, что это помогает.
Наконец я решил сохранить информацию URL как переменную и PHP substr
, strlen
функция.
$img=$_POST['img'];
$len = strlen("http://localhost/uploads/");
$new_path = substr($img, $len, strlen($img)-$len);
if(unlink($new_path)){
echo "Deleted";
}
else{
echo "Fail";
}