Php 使用Zend doens移动上传的文件();行不通

Php 使用Zend doens移动上传的文件();行不通,php,zend-framework,Php,Zend Framework,我们正在Zend framework中构建应用程序,在移动上载的文件时遇到问题。我们通过$filePath=$form->image->getFileName()获取文件;但当我们试图在其上运行move_上传的文件时,它只会返回false 映像已成功上载到临时目录,但无法将其移动到文件夹中 $formData = $request->getPost();        if ($form->isValid($formData))        {            

我们正在Zend framework中构建应用程序,在移动上载的文件时遇到问题。我们通过$filePath=$form->image->getFileName()获取文件;但当我们试图在其上运行move_上传的文件时,它只会返回false

映像已成功上载到临时目录,但无法将其移动到文件夹中

   $formData = $request->getPost();
        if ($form->isValid($formData)) 
        {
              $form->image->receive();
              $filePath = $form->image->getFileName();
               move_uploaded_file($filePath,APPLICATION_PATH . '\images\new');
         }
提前谢谢

编辑:

当我尝试此操作时,得到500-内部服务器错误:

            $upload = new Zend_File_Transfer_Adapter_Http();

            $upload->setDestination("C:\xx\xx\public\banners");

            if (!$upload->isValid()) 
             {
                 throw new Exception('Bad image data: '.implode(',', $upload->getMessages()));
              }

      try {
        $upload->receive();
       } 
       catch (Zend_File_Transfer_Exception $e) 
       {
           throw new Exception('Bad image data: '.$e->getMessage());
       }
似乎是“$upload->SETDESTINGE”(“C:\xx\xx\public\banners”);
“导致崩溃的原因

有关stackoverflow的此等效问题和答案应能帮助您:


使用
->receive()
后,您已经移动了上载的文件,因此调用另一个
移动上载的文件()
是没有意义的。

嗨,谢谢您的回答。我用你的建议编辑了上面的问题。我遇到了一个崩溃:(@user1251004不知道这是否会改变任何东西,但请尝试以下操作:
“C:\\xx\\xx\\public\\banners”
。请注意双斜杠。@user1251004查看您的错误日志,看看它对500的说明。
//validate file
//for example, this checks there is exactly 1 file, it is a jpeg and is less than 512KB
$upload = new Zend_File_Transfer_Adapter_Http();
$upload->addValidator('Count', false, array('min' =>1, 'max' => 1))
       ->addValidator('IsImage', false, 'jpeg')
       ->addValidator('Size', false, array('max' => '512kB'))
       ->setDestination('/tmp');

if (!$upload->isValid()) 
{
    throw new Exception('Bad image data: '.implode(',', $upload->getMessages()));
}

try {
        $upload->receive();
} 
catch (Zend_File_Transfer_Exception $e) 
{
        throw new Exception('Bad image data: '.$e->getMessage());
}

//then process your file, it's path is found by calling $upload->getFilename()