Zend Framework實(shí)現(xiàn)多文件上傳功能實(shí)例
本文實(shí)例講述了Zend Framework實(shí)現(xiàn)多文件上傳功能的方法。分享給大家供大家參考,具體如下:
第一步:在我們?cè)瓉?lái)教程找到library文件夾..這里原來(lái)是存放我們Zend類(lèi)庫(kù)文件夾的地方..現(xiàn)在我們?cè)趌ibrary文件夾里加上如下幾個(gè)文件夾:library/Custom/Controller/Plugin/
文件夾我們加入完成.這時(shí)候我們就要找到我們的文件上傳的類(lèi)文件了..這里我命名為Upload.php文件名..這個(gè)文件就是我們將要用到文件上傳的的類(lèi)文件.當(dāng)然這文件我是改寫(xiě)成了Zend Framework里的插件形式...Upload.php部分文件說(shuō)明如下,(我這里只給出部分程序,也就是簡(jiǎn)單的多文件上傳類(lèi)):
<?php
class Custom_Controller_Plugin_Upload extends Zend_Controller_Plugin_Abstract {
private $uploaddir; //文件上傳存路徑
private $max_files; //一次性最多上傳多少文件
private $max_size; //文件最大量
private $permission; //文件夾是否可以有權(quán)限
private $files;
private $allowed = array (); //允許上傳文件格式
//不允許上傳文件格式
private $notallowed = array ("exe", "mp3" );
private $filesname; //文件表單name
//圖片文件寬度,超過(guò)就生成縮略圖
private $imagewidth; //圖片文件高度,超過(guò)就生成縮略圖
private $imageheight;
public $filearray = array ();
//返回多個(gè)文件名
public $lastFileName; //返加一個(gè)文件名
public $Error;
?>
第二步:在我們以前寫(xiě)留言本的教程里..找到當(dāng)時(shí)的控制器..IndexController.php,加入一個(gè)名稱(chēng)叫做upload的動(dòng)作(Action).這個(gè)upload動(dòng)作就是為了要文件上傳時(shí)可以運(yùn)用..它的詳細(xì)程序,如下所示:
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;">
恭喜您,照片上傳成功!請(qǐng)您<a style="color:red;" href=
"'.$this->view->baseUrl.'/index/index/">點(diǎn)這里返回</a></div>';
}else{
echo '<div class="commentInner" style="width:860px;text-align:center;">
對(duì)不起,您照片上傳有以下錯(cuò)誤:'.$uploadfile->error.'請(qǐng)返回重新上傳!請(qǐng)您
<a style="color:red;" href="'.$this->view->baseUrl.'/index/upload/">
點(diǎn)這里返回</a></div>';
}
}
echo $this->view->render('message/upload.phtml');//顯示模版
echo $this->view->render('footer.phtml');//顯示模版腳文件
}
第三步:在我們的View模板文件夾中加入上傳功能Form表單..:這里我在里加多加了一個(gè)upload.phtml模板文件...為了讓大家更好的看清楚怎樣實(shí)現(xiàn)上傳..我只寫(xiě)一個(gè)最簡(jiǎn)單的上傳文件表單..這樣實(shí)現(xiàn)起來(lái)就不會(huì)太難...我們只要在這個(gè)View模板文件里..把它的POST的動(dòng)作指向到我們upload這個(gè)動(dòng)作就可以上傳文件了..
最后.你要的只是輸入你的網(wǎng)站地址..比如我的:http://127.0.0.1/zendframework/index/upload/ 這個(gè)只你在上傳表單里選擇圖片文件..你就可以上傳了..沒(méi)有錯(cuò)的話(huà).你剛上傳的文件會(huì)在網(wǎng)站目錄zendframework/public/upload/這個(gè)文件夾下面..應(yīng)試不會(huì)有錯(cuò)..因?yàn)槲业倪@里只控制上傳為圖片文件..你可以改成你自己想要上傳的其它文件..
更多關(guān)于zend相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Zend FrameWork框架入門(mén)教程》、《php優(yōu)秀開(kāi)發(fā)框架總結(jié)》、《Yii框架入門(mén)及常用技巧總結(jié)》、《ThinkPHP入門(mén)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門(mén)教程》、《php+mysql數(shù)據(jù)庫(kù)操作入門(mén)教程》及《php常見(jiàn)數(shù)據(jù)庫(kù)操作技巧匯總》
希望本文所述對(duì)大家基于Zend Framework框架的PHP程序設(shè)計(jì)有所幫助。
- zend framework文件上傳功能實(shí)例代碼
- windows下zendframework項(xiàng)目環(huán)境搭建(通過(guò)命令行配置)
- zend framework配置操作數(shù)據(jù)庫(kù)實(shí)例分析
- Zend framework處理一個(gè)http請(qǐng)求的流程分析
- 非常好用的Zend Framework分頁(yè)類(lèi)
- 解析如何使用Zend Framework 連接數(shù)據(jù)庫(kù)
- 解析zend Framework如何自動(dòng)加載類(lèi)
- Zend Framework上傳文件重命名的實(shí)現(xiàn)方法
相關(guān)文章
PHP使用GIFEncoder類(lèi)生成gif動(dòng)態(tài)滾動(dòng)字幕
這篇文章主要介紹了PHP使用GIFEncoder類(lèi)生成gif動(dòng)態(tài)滾動(dòng)字幕,文字滾動(dòng)分為兩種情況,一種為水平滾動(dòng),一種為垂直滾動(dòng),需要的朋友可以參考下2014-07-07
ThinkPHP 3.2.3實(shí)現(xiàn)加減乘除圖片驗(yàn)證碼
這篇文章主要為大家詳細(xì)介紹了ThinkPHP 3.2.3實(shí)現(xiàn)加減乘除圖片驗(yàn)證碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12
PHP + plupload.js實(shí)現(xiàn)多圖上傳并顯示進(jìn)度條加刪除實(shí)例代碼
本篇文章主要介紹了PHP + plupload.js實(shí)現(xiàn)多圖上傳并顯示進(jìn)度條加刪除實(shí)例代碼。具有一定的參考價(jià)值,有興趣的可以了解一下。2017-03-03
利用php做服務(wù)器和web前端的界面進(jìn)行交互
PHP與Web頁(yè)面交互是實(shí)現(xiàn)PHP網(wǎng)站與用戶(hù)交互的重要手段。本篇文章主要介紹了利用php做服務(wù)器和web前端的界面進(jìn)行交互,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下。2016-10-10
PHP結(jié)合Jquery和ajax實(shí)現(xiàn)瀑布流特效
php+ajax+jquery實(shí)現(xiàn)無(wú)限瀑布流布局 寬度是一定的高度不定的瀑布流布局 也可以說(shuō)是無(wú)縫拼圖 當(dāng)瀏覽器滾動(dòng)到底部時(shí)候自動(dòng)加載圖片,非常的實(shí)用,需要的小伙伴可以參考下。2016-01-01

