تالار گفتمان nCIS.ir

نسخه‌ی کامل: حذف فایل عکس
شما در حال مشاهده نسخه آرشیو هستید. برای مشاهده نسخه کامل کلیک کنید.
سلام خدمت دوستان
بنده چنین کدی برای پاک کردن عکس ها نوشتم
public function delete()
    {
       parent::delete(); // TODO: Change the autogenerated stub
       File::delete($this->path);
   }
عکس ها از دیتابیس پاک میشوند ولی از پوشه مربوطه پاک نمیشوند
چرا File::delete کار نمیکند
من از fecade استفاده میکنم

path های من هم در دیتابیس بدین شکل هستند و همه چیز ظاهرا درست هست . نمیدونم مشکل کجاست

نقل قول:

/images/photos/148305482612353922_578329245654280_100412195_n.jpg
برای حذف فایل اگر آن در فولدر storage قرار دارد مثلا در چنین مسیری storage/app/public/images/1.jpg می تونید با کلاس Storage آن را حذف کنید:
Storage::disk('public')->delete('images/1.jpg');

وگرنه می توانید با دادن مسیر کامل فایل با تابع unlink آن را حذف کنید:
unlink(storage_path('app/public/images/1.jpg'));
خیر محتویات داخل پوشه public هست و ربطی به storage نداره
و من داخل مدل photo این کد شما رو نوشتم ولی متاسفانه جواب نمیده
  public function delete()
   {
       parent::delete(); // TODO: Change the autogenerated stub
       unlink('public'.$this->path);
   }

و همچنین
unlink($this->path);

اگر هم
 unlink(storage_path($this->path));
را بنویسم هم باز خطا میدهد

اینم از خطا ها

کد:
unlink(/images/399fc4df8dc027acd27373c3fddee632.jpg): No such file or directory
همشون تقریبا همین ارور رو میدن که فایل پیدا نشد
اگر در فولدر public هست با Unlink و دادن مسیر کامل فایل و با فرض اینکه فایل در این مسیر هست Public/images/1.jpg:
unlink(public_path('images/1.jpg'));