我无法在setDestination()
的功能中设置路径以在zend框架中上传文件。
当我使用以下路径时,我的文件已成功上传:
$upload = new Zend_File_Transfer_Adapter_Http();
$upload->setDestination("C:/");
但实际上我想上传目录中的文件,如upload_folder
,它位于zend框架的公共目录中。我尝试过我的代码:
$upload = new Zend_File_Transfer_Adapter_Http();
$upload->setDestination($this->view->baseUrl()."/upload_folder/");
但该文件未上传到上述路径目录中。
任何人都可以帮助我吗?如何在Project_Directory/public/upload_folder
中设置文件上传路径?
答案 0 :(得分:3)
setDestination
需要文件系统路径,因此C:/
的工作原理和使用baseUrl
的原因不一样。
$this->view->baseUrl
将是http://yourserver.com
(这是一个网址,而不是文件系统路径)。
如果您像大多数示例一样设置了Zend Framework,那么您应该将APPLICATION_PATH
变量设置为例如C:/project/application
(例如,你也可以C:/project/public
)。
如果您确实有APPLICATION_PATH
(只需回复它以查看它的去向),那么您可以使用setDestination(APPLICATION_PATH.'/../public/upload_folder/');
答案 1 :(得分:1)
使用APPLICATION_PATH
常量
setDestination(APPLICATION_PATH.'/../public/upload_folder/')