説明書に載ってる
http://framework.zend.com/manual/2.1/en/modules/zend.form.file-upload.html
// File: MyController.php
public function uploadFormAction()
{
$form = new UploadForm('upload-form');
if ($this->getRequest()->isPost()) {
// Make certain to merge the files info!
$post = array_merge_recursive(
$this->getRequest()->getPost()->toArray(),
$this->getRequest()->getFiles()->toArray()
);
$form->setData($post);
if ($form->isValid()) {
$data = $form->getData();
// Form is valid, save the form!
return $this->redirect()->toRoute('upload-form/success');
}
}
return array('form' => $form);
}
ファイルのアップロードが成功すると、$form->getData() は以下を返します。
array(1) {
["image-file"] => array(5) {
["name"] => string(11) "myimage.png"
["type"] => string(9) "image/png"
["tmp_name"] => string(22) "/private/tmp/phpgRXd58"
["error"] => int(0)
["size"] => int(14908679)
}
}
取得した配列を使用して$form->getData()
、アップロードされたファイルを処理します。
と呼ばれるフィルターを使用して、ターゲットを設定し、名前を変更することもできます。
以下のリンクには、そのための優れた説明があります。
http://framework.zend.com/manual/2.1/en/modules/zend.filter.file.rename-upload.html#zend-filter-file-rename-upload
お役に立てれば。