【问题标题】:Zend Framework 2 multifile upload issueZend Framework 2 多文件上传问题
【发布时间】:2014-11-17 16:54:41
【问题描述】:

我试图在 Zend Framework 2 上一次上传多个文件,但出现以下错误:

Zend \ Validator \ Exception \ InvalidArgumentException 
Value array must be in $_FILES format
/var/www/eiq/vendor/zendframework/zendframework/library/Zend/Validator/File/UploadFile.php
     * @return bool
     * @throws Exception\InvalidArgumentException
     */
    public function isValid($value)
    {
        if (is_array($value)) {
            if (!isset($value['tmp_name']) || !isset($value['name']) || !isset($value['error'])) {
                throw new Exception\InvalidArgumentException(
                    'Value array must be in $_FILES format'
                );

我主要关注ZF2 File Uploading - ReadTheDocs 上的最新文档,我的相关代码位于this gist。当我转储 $post 数组时,如下所示:

array (size=2)
  'gallery' => 
    array (size=1)
      'file-upload' => 
        array (size=3)
          0 => 
            array (size=5)
              ...
          1 => 
            array (size=5)
              ...
          2 => 
            array (size=5)
              ...
  'submit' => string '' (length=0)

但我不能得到$post['file-input'],它给出了同样的错误。谁能帮忙

【问题讨论】:

标签: php forms zend-framework zend-framework2


【解决方案1】:

根据文档here,它说验证器仅用于单个文件上传。

对于多个文件上传,请使用Zend\Validator\File\Upload

【讨论】:

  • 很遗憾你错了。即使 HTML5 多文件上传失败,它必须取数组的第一个元素,看看我的问题中的 i 链接(readthedocs source)
  • 您是否尝试过使用 Zend\Validator\File\Upload 而不是 Zend\Validator\File\UploadFile?
  • 不,我还没有,我的本地存储库有问题,我现在或明天早上尝试并通知您。非常感谢
猜你喜欢
  • 2014-11-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-04-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-05-21
相关资源
最近更新 更多