0

ファイルのアップロードを実装しようとすると、このエラーが発生します。

if ($request->isPost()) {

        $form->setInputFilter($language->getInputFilter());
        $nonFile = $request->getPost()->toArray();
        $File = $this->params()->fromFiles('fileupload');
        $data = array_merge(
                $nonFile, array('fileupload' => $File['name'])
        );
        $form->setData($request->getPost());
        if ($form->isValid()) {
            $size = new Size(array('min' => 20));
            $adapter = new \Zend\File\Transfer\Adapter\Http();
            $adapter->setValidators(array($size), $File['name']);
            if (!$adapter->isValid()) {

                $dataError = $adapter->getMessages();
                $error = array();
                foreach ($dataError as $key => $row) {
                    $error[] = $row;
                } //set formElementErrors
                $form->setMessages(array('fileupload' => $error));
            } else {
                $adapter->setDestination(dirname(__DIR__) . '/module/Application/Lanuguage');
                if ($adapter->receive($File['name'])) {
                    $data = $form->getData();
                    $language->populate($data);
                    $this->getEntityManager()->persist($language);
                    $this->getEntityManager()->flush();
                    echo ' upload ' . $language->fileupload;
                }
            }

            return $this->redirect()->toRoute('admin_language');
        }
    }

$dataError のダンプを取ると、このメッセージが表示されます

配列 ([fileUploadErrorIniSize] => ファイル '' が定義された ini サイズを超えています)

85 バイト サイズのファイルをアップロードしようとしています。私のphp.iniのデフォルトのファイルアップロードサイズは8Mです。

4

0 に答える 0