File Upload Kütüphanesi

File Upload kütüphanesi, belirlenen kurallara uygun olarak dosya upload işlemlerini kolaylaştıran bir dizi araç içermektedir.

  1. Dosya Upload Ayarları » config()
  2. Dosya Tipini Belirleme » allowedTypes()
  3. Max. Resim Genişliğini Belirleme » maxWidth()
  4. Max. Resim Yüksekliğini Belirleme » maxHeight()
  5. Max. Dosya Boyutunu Belirleme » maxSize()
  6. Upload Edilecek Dizini Belirleme » uploadPath()
  7. Upload Edilecek Dosyayı Belirleme » setFile()
  8. Dosya Adını Belirleme » filename()
  9. Dosya Upload İşlemi » handle()

Dosya Upload Ayarları

Upload edilecek dosya ile ilgili kuralların tamamı, bir defada config() methodu ile belirlenebilir.

Parametre Veri Tipi Açıklama
$config Array allowed_types, max_width, max_height, max_size, upload_path
Upload::config([
	'allowed_types'	=> ['jpg', 'png', 'gif'], // izin verilen dosya tipleri
	'max_width'		=> 800, // max. resim genişliği
	'max_height'	=> 600, // max. resim yüksekliği
	'max_size'		=> 200, // max. dosya boyutu (kb)
	'upload_path'	=> public_path('upload') // upload dizini
]);

Dosya Tipini Belirleme

Upload edilecek dosya tipini ayrıca belirtmek için allowedTypes() methodu kullanılır. Dosya tiplerini içeren, array tipinde bir parametre alır.

Upload::allowedTypes(['jpg', 'png', 'gif']);

Max. Resim Genişliğini Belirleme

Upload edilecek resim dosyasının max. genişliğini belirtmek için maxWidth() methodu kullanılır. Genişlik değerini içeren, integer tipinde bir parametre alır.

Upload::maxWidth(800);

Max. Resim Yüksekliğini Belirleme

Upload edilecek resim dosyasının max. yüksekliğini belirtmek için maxHeight() methodu kullanılır. Yükseklik değerini içeren, integer tipinde bir parametre alır.

Upload::maxHeight(600);

Max. Dosya Boyutunu Belirleme

Upload edilecek dosyanın max. boyutunu kb cinsinden belirtmek için maxSize() methodu kullanılır. Integer tipinde bir parametre alır.

Upload::maxSize(200); // Max 200 kb 

Upload Edilecek Dizini Belirleme

Dosyanın upload edileceği dizini belirtmek için uploadPath() methodu kullanılır. Dosya yolunu içeren, string tipinde bir parametre alır. Varsayılan dosya upload dizini, /Public/upload olarak ayarlanmıştır.

Upload::uploadPath(public_path('image')); // Upload dizini /Public/image olarak belirlendi. 

Upload Edilecek Dosyayı Belirleme

Upload edilecek dosyayı belirlemek için file() methodu kullanılır. Formdan gelen file verisini içeren, array tipinde bir parametre alır.

Upload::file(Request::files('file')); // Formdan gelen 'file' elemanı parametre olarak veriliyor.

// ya da

Upload::file($_FILES['file']);

Dosya Adını Belirleme

Upload edilecek dosya adını belirlemek için filename() methodu kullanılır. Dosya adını içeren, string tipinde bir parametre alır.

Upload::filename('example.jpg');

Dosya Upload İşlemi

Kurallar belirlendikten sonra upload işlemini başlatmak için handle() methodu kullanılır.

Upload::handle();