راکت

حذف فایل ای که آدرس کامل داره در لاراول

6 پاسخ

@ali.bayat @hossein.r.1442 @hesammousavi @elyasbeshkani @juza66 @milad @rezajashnsaz0011 @endworld @mohsenbostan

سلام دوستان چه طور میشه فایلی که در public است ولی آدرسش کامله ، رو حذف کرد.
مثلا آدرس به این صورت هست

http://localhost:8000/uploads/2020/3/21/5e75f7a3f08f9400.jpg

البته File::delete رو امتحان کردن ولی false بر میگردونه
ممنون میشم راهنمایی کنید

ثبت پرسش جدید

پاسخ‌ها

6
امین محمدزاده
امین محمدزاده
@amin.webdesign

تخصص: برنامه نویسی وب - Laravel

شما دامین رو نباید پاس بدید به توابع حذف
از unlink خود php هم میتونید استفاده کنید اول این تابع هم یه @ بذارید که اگه فایلی یافت نشد خطا نده
به این صورت

@unlink('uploads/2020/3/21/5e75f7a3f08f9400.jpg')
سعید
سعید
@Saeeed

تخصص: برنامه نویس وب

@amin.webdesign
من از froala editor استفاده میکنم .
در این ادیتور وقتی فایلی آپلود میشه و دوباره توسط کاربر از ادیتور حذف میشه ،
آدرس کامل فایل به سرور فرستاده میشه تا از سرور نیز حذف بشه.
البته با کد زیر تونستم آدرس رو اصلاح کنم :

str_replace('http://localhost:8000/','',$request->get('url'));

اما می خوام بدونم راه بهتری نیست ؟

شاید پاسخ شما همین‌جا باشد

محسن بستان
محسن بستان
@mohsenbostan

تخصص: Senior Backend Developer

@Saeeed
تنها کاری که فعلا قابل انجامه اینه که اسم رو از لینک جدا کنید اون رو حذف کنید!

امین محمدزاده
امین محمدزاده
@amin.webdesign

تخصص: برنامه نویسی وب - Laravel

@Saeeed
بهترین کار همینه که انجام دادید. چون برای حذف باید مسیر فایل مستقر در هاست رو بدید و آدرس دامین نباید توی آدرس مسیر فایل باشه و تنها کار همین حذف آدرس از رشته مذکور هست.

سید حسین رضوی
سید حسین رضوی
@hossein.r.1442

تخصص: برنامه نویس وب و طراح رابط کاربری

دقیقا تنها کار همینه که از ریپلیس استفاده کنید، فقط به جای اینکه خودتون ادرس رو بزنید از request استفاده کنید تا اگه دامنه تغییر کرد کد شما بدون مشکل کار کنه

alikhakpour
alikhakpour
@alikhakpourdev

تخصص: برنامه‌نویس لاراول


//if $path=http://localhost:8000/uploads/image.png // $file return uploads/image.png
$file = Str::after($path, 'http://localhost:8000/') ? Str::after($path, 'http://localhost:8000/') : $path;

if(file_exists($file)) {
    unlink($file)
}

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام