2013-06-10 24 views
13

Symfony2 dosyasından dosya yükleme mümkün mü? doktrin ile, onun örnek burada verilmiştir: http://symfony.com/doc/2.2/cookbook/doctrine/file_uploads.htmlsymfony2 Doktrinsiz dosya nasıl yüklenir?

biz form gönderildiğinde sonra dosyaya yüklenen hareket edebileceği ile biz move_uploaded_file() fonksiyonu var çekirdek PHP'de gibi dosya yüklemek için basit bir yolu var mı. Ben symfony formu gönderdiğinde Şimdilik

bu ben dosyayı taşıyın formunu gönderdikten sonra istek dizisi (Symfony \ Component \ HttpFoundation \ İsteği)

[files] => Symfony\Component\HttpFoundation\FileBag Object 
     (
      [parameters:protected] => Array 
       (
        [upload_cover] => Symfony\Component\HttpFoundation\File\UploadedFile Object 
         (
          [test:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 
          [originalName:Symfony\Component\HttpFoundation\File\UploadedFile:private] => secret_of_success.png 
          [mimeType:Symfony\Component\HttpFoundation\File\UploadedFile:private] => image/png 
          [size:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 157958 
          [error:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 0 
          [pathName:SplFileInfo:private] => C:\xampp\tmp\php3636.tmp 
          [fileName:SplFileInfo:private] => php3636.tmp 
         ) 

       ) 

     ) 

cevap

33

ve 'dosya' bölümünde elde ediyoruz İstediğiniz dizine ve karşılığında bir File nesnesi alacaksınız.

foreach($request->files as $uploadedFile) { 
    $name = //... 
    $file = $uploadedFile->move($directory, $name); 
} 

bu sınıfın tam özellikli dokümantasyon the API-Manual bir göz atın.

+0

Cevabınız için teşekkürler, nasıl olabilirsiniz? $ Uploadfile, bu gibi $ uploadfile = new \ Symfony \ Component \ HttpFoundation \ File \ UploadedFile(); – Rahul

+0

Formu teslim ettikten sonra '$ request-> files; Böylece, bu diziden geçebilir ve ilk olarak gönderdiğiniz her dosyayı taşıyabilirsiniz. – devsheeep

+0

Yukarıdaki döngü için kullanırsam, sadece temp dosyasını yükler gibi görünüyor, yükleme dizinine yükleme için bir png seçtim Yüklenen temp dosyasını görüyorum, png görüntü temp dosyasının adı php483.tmp değil. Burada bir şey mi eksik? – Rahul

İlgili konular