2016-05-31 49 views
1

我试图从输入是数组中Laravel 4得到的值: $corporate_document = Input::get('corporate_document');获取值时,它是阵列 - Laravel 5

但它返回NULL。

当我转储输入::所有的(),它是存在的:

array(78) { 
 
    //other inputs 
 
    ["corporate_document"]=> 
 
     array(3) { 
 
     [0]=> 
 
     object(Symfony\Component\HttpFoundation\File\UploadedFile)#9 (7) { 
 
      ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      bool(false) 
 
      ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      string(21) "image1.png" 
 
      ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      string(9) "image/png" 
 
      ["size":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      int(46602) 
 
      ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      int(0) 
 
      ["pathName":"SplFileInfo":private]=> 
 
      string(14) "/tmp/phpmY7ww1" 
 
      ["fileName":"SplFileInfo":private]=> 
 
      string(9) "phpmY7ww1" 
 
     } 
 
     [1]=> 
 
     object(Symfony\Component\HttpFoundation\File\UploadedFile)#10 (7) { 
 
      ["test":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      bool(false) 
 
      ["originalName":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      string(28) "image2.png" 
 
      ["mimeType":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      string(9) "image/png" 
 
      ["size":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      int(46602) 
 
      ["error":"Symfony\Component\HttpFoundation\File\UploadedFile":private]=> 
 
      int(0) 
 
      ["pathName":"SplFileInfo":private]=> 
 
      string(14) "/tmp/phpdT87Cm" 
 
      ["fileName":"SplFileInfo":private]=> 
 
      string(9) "phpdT87Cm" 
 
     } 
 
     
 
     } 
 
    }

如何从输入corporate_document使用输入::得到()或类似的东西得到的值?

+0

你是否在使用laravel 5或4,你在你的文章中提到过,我无法弄清楚。它看起来像你试图访问$ _FILES。您可能需要使用此代码,而不是https://laravel.com/docs/5.1/requests#files – Brett

回答

0

这不是一个普通的输入数组,这是一个文件和文件数组的处理方式不同。您无法像访问其他请求数据一样访问上传的文件。

你可以试试:

Input::allFiles(); // See a list of all files 
Input::hasFile('corporate_document'); // See if a file exists 
Input::file('corporate_document')->move($path); // Rename the file 

我这里只关心的是你的corporate_document是一个数组 - 我还没有确定如何解决它在这种情况下,但allFiles()可以给你答案。也许它会变成类似于Input::file('corporate_document.0');

另外请注意,输入外观只是Request类的访问器(在Laravel 5中) - 因此您可以运行所有the same methods

如果你在Laravel 4上 - API应该是一样的。