keyboard_return  چسبون مقالات آموزشی آموزش کار با فایل در لاراول ۵.۳ laravel
  1. آموزش کار با فایل در لاراول ۵.۳ laravel

فایل در لاراول

در لاراول ۵.۳ شاهد توابع قدرتمندی برای کار با فایل هستیم که در نسخه های قبلی لاراول همچین توابعی وجود نداشته است.امروز قصد داریم کار با سیستم فایل لاراول ۵.۳ رو براتون تشریح کنیم. در این نسخه میتوانید با سیستم فابل local ، amazon s3 و rackspace کار کنید.amazon s3 و rackspace فضای ابری هستند که میتوانید فایل های خود را در سرور ابری دیگر ذخیره کنید.البته اگر از فضای ابری دیگر استفاده میکنید باید بصورت دستی این را تنظیم کنید و لاراول این قابلیت را در اختیار شما میگذارد که تنظیمات فایل سیستم در مسیر config/filesystem.php قرار دارد.

کار با فایل در لاراول

برای کار با سیستم فایل لاراول ۵٫۳ باید دستور زیر را در خط فرمان پروژتون وارد کنید:

php artisan storage:link

ما لوکال درایور را برای شما توضیح خواهیم داد:

وقتی از لوکال درایور استفاده میکنید بصورت پیشفرض همه ی فایل هاتون در مسیر storage/app قرار میگیره. حالا با دستور زیر یک فایل در مسیر storage/app/file.txt ذخیره میکنیم.

Storage::disk('local')->put('file.txt', 'chasboon is best');

دستور بالا عبارت chasboon is best را در file.txt ذخیره میکند.

اگر از facade دیسک (disk) استفاده نکنید، لاراول بصورت پیشفرض از درایور پیشفرض شما که در فایل config/filesystem.php است استفاده میکند.

use Illuminate\Support\Facades\Storage;

Storage::put('avatars/1', $fileContents);

برای خواندن از فایل:

$contents = Storage::get('file.jpg');

برای چک کردن وجود یک فایل:

$exists = Storage::disk('s3')->exists('file.jpg');

برای دریافت url فایل :

use Illuminate\Support\Facades\Storage;

$url = Storage::url('file1.jpg');

[highlight color="red"]این نکته را متذکر می شوم اگر از local driver استفاده میکنید برای اینکه فایل هایتان در اختیار کاربران بصورت public قرار بگیرد باید فایل هایتان را در مسیر storage/app/public ذخیره کنید وحتما symbolic link که در اول پست شرح داده ایم را ایجاد نمایید.[/highlight]

فایل متا دیتا (ِFileMetadata):

برای دریافت حجم فایل:

use Illuminate\Support\Facades\Storage;

$size = Storage::size('file1.jpg');

بدست آوردن زمان آخرین ویرایش:

$time = Storage::lastModified('file1.jpg');

ذخیره یک فایل:

use Illuminate\Support\Facades\Storage;

Storage::put('file.jpg', $contents);

الحاق یا append کردن به فایل :

Storage::prepend('file.log', 'Prepended Text');

Storage::append('file.log', 'Appended Text');

کپی کردن و move کردن فایل:

Storage::copy('old/file1.jpg', 'new/file1.jpg');

Storage::move('old/file1.jpg', 'new/file1.jpg');

برای آپلود فایل مانند آپلود تصویر و اسناد از کد زیر و متد store استفاده میکنیم:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class UserAvatarController extends Controller
{
/**
* Update the avatar for the user.
*
* @param  Request  $request
* @return Response
*/
public function update(Request $request)
{
$path = $request->file('avatar')->store('avatars');

return $path;
}
}

تعیین نام فایل:

$path = $request->file('avatar')->storeAs(
'avatars', $request->user()->id
);

قابلیت مشاهده فایل:

use Illuminate\Support\Facades\Storage;

Storage::put('file.jpg', $contents, 'public');

برای اینکه بفهمیم visibility یک فایل چیست:

$visibility = Storage::getVisibility('file.jpg');

برای set کردن visibility :

Storage::setVisibility('file.jpg', 'public');

پاک کردن یک فایل یا چند فایل:

use Illuminate\Support\Facades\Storage;

Storage::delete('file.jpg');

Storage::delete(['file1.jpg', 'file2.jpg']);

امیدواریم این آموزش مورد پسند قرار بگیره و با کامنت ها مارو دلگرم کنین...

آموزش کار با فایل در لاراول ۵.۳ laravel - 4.2 از 5 بر اساس 150 رای

امتیاز کاربران

آموزش کار با فایل در لاراول ۵.۳ laravel
دیدگاه‌ها

دیدگاهی وجود ندارد

2024 © Copyright کليه حقوق مادی و معنوی براي چسبون محفوظ است و هرگونه کپی برداری پیگرد قانونی دارد.