File :: deleteDirectory ('path') не удаляет каталог - PullRequest
0 голосов
/ 20 сентября 2019

Я пытаюсь удалить папку с изображениями в ней.

вот мой метод удаления файла

public function deleteCar($id) {
    $car = Car::find($id);
    $carImages = carImage::where('car_id', $id);

    foreach ($carImages as $image) {
        //Just for testing purposes.
        $image->car_image_path = '/uploads/cars/32/exampleImage.png';

        $pathWords = explode('/', $image->car_image_path);
        $path = $pathWords[0] . '/' . $pathWords[1] . '/' . $pathWords[2] . '/' . $pathWords[3];
        File::deleteDirectory($path);
        $image->delete();
    }

    $car->delete();

    return response()->json(['error' => false, 'data' => $id]);
}

Что я хочу сделать, это удалить папку итогда модель с правильным car_id.Это пропущено.

Папка не удаляется, как и модель изображения.

1 Ответ

1 голос
/ 20 сентября 2019

Вы должны использовать public_path для удаления каталога:

File::deleteDirectory(public_path('uploads/cars/32'));

Метод вернет true в случае успеха, false в случае сбоя.Надеюсь, это поможет

...