Home > php教程 > php手册 > Zend Framework实现多文件上传功能实例

Zend Framework实现多文件上传功能实例

WBOY
Release: 2016-06-06 19:32:53
Original
1151 people have browsed it

本文实例讲述了Zend Framework实现多文件上传功能的方法。分享给大家供大家参考,具体如下: 第一步:在我们原来教程找到library文件夹..这里原来是存放我们Zend类库文件夹的地方..现在我们在library文件夹里加上如下几个文件夹:library/Custom/Controller/Pl

本文实例讲述了Zend Framework实现多文件上传功能的方法。分享给大家供大家参考,具体如下:

第一步:在我们原来教程找到library文件夹..这里原来是存放我们Zend类库文件夹的地方..现在我们在library文件夹里加上如下几个文件夹:library/Custom/Controller/Plugin/

文件夹我们加入完成.这时候我们就要找到我们的文件上传的类文件了..这里我命名为Upload.php文件名..这个文件就是我们将要用到文件上传的的类文件.当然这文件我是改写成了Zend Framework里的插件形式...Upload.php部分文件说明如下,(我这里只给出部分程序,也就是简单的多文件上传类):

<&#63;php
class Custom_Controller_Plugin_Upload extends Zend_Controller_Plugin_Abstract {
private $uploaddir; //文件上传存路径
private $max_files; //一次性最多上传多少文件
private $max_size; //文件最大量
private $permission; //文件夹是否可以有权限
private $files;
private $allowed = array (); //允许上传文件格式
//不允许上传文件格式
private $notallowed = array ("exe", "mp3" );
private $filesname; //文件表单name
//图片文件宽度,超过就生成缩略图
private $imagewidth; //图片文件高度,超过就生成缩略图
private $imageheight;
public $filearray = array ();
//返回多个文件名
public $lastFileName; //返加一个文件名
public $Error;
&#63;>

Copy after login

第二步:在我们以前写留言本的教程里..找到当时的控制器..IndexController.php,加入一个名称叫做upload的动作(Action).这个upload动作就是为了要文件上传时可以运用..它的详细程序,如下所示:

public function uploadAction() {
echo $this->view->render('header.phtml');//显示模版头文件
if(strtolower($_SERVER['REQUEST_METHOD'])=='post'){
Zend_Loader::loadClass('Custom_Controller_Plugin_Upload');
$uploadfile=new Custom_Controller_Plugin_Upload( ROOT_DIR.'/public/upload/','uploadfile','10','2048000', array("gif","png","jpg","bmp","jpeg"),600,600);
if(''==$uploadfile->Error){
echo '<div class="commentInner" style="width:860px;text-align:center;">
恭喜您,照片上传成功!请您<a style="color:red;" href=
"'.$this->view->baseUrl.'/index/index/">点这里返回</a></div>';
}else{
echo '<div class="commentInner" style="width:860px;text-align:center;">
对不起,您照片上传有以下错误:'.$uploadfile->error.'请返回重新上传!请您
<a style="color:red;" href="'.$this->view->baseUrl.'/index/upload/">
点这里返回</a></div>';
}
}
echo $this->view->render('message/upload.phtml');//显示模版
echo $this->view->render('footer.phtml');//显示模版脚文件
}

Copy after login

第三步:在我们的View模板文件夹中加入上传功能Form表单..:这里我在里加多加了一个upload.phtml模板文件...为了让大家更好的看清楚怎样实现上传..我只写一个最简单的上传文件表单..这样实现起来就不会太难...我们只要在这个View模板文件里..把它的POST的动作指向到我们upload这个动作就可以上传文件了..

最后.你要的只是输入你的网站地址..比如我的:http://127.0.0.1/zendframework/index/upload/ 这个只你在上传表单里选择图片文件..你就可以上传了..没有错的话.你刚上传的文件会在网站目录zendframework/public/upload/这个文件夹下面..应试不会有错..因为我的这里只控制上传为图片文件..你可以改成你自己想要上传的其它文件..

更多关于zend相关内容感兴趣的读者可查看本站专题:《Zend FrameWork框架入门教程》、《php优秀开发框架总结》、《Yii框架入门及常用技巧总结》、《ThinkPHP入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Recommendations
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template