Zend Framework實現(xiàn)多文件上傳功能實例
本文實例講述了Zend Framework實現(xiàn)多文件上傳功能的方法。分享給大家供大家參考,具體如下:
第一步:在我們原來教程找到library文件夾..這里原來是存放我們Zend類庫文件夾的地方..現(xiàn)在我們在library文件夾里加上如下幾個文件夾:library/Custom/Controller/Plugin/
文件夾我們加入完成.這時候我們就要找到我們的文件上傳的類文件了..這里我命名為Upload.php文件名..這個文件就是我們將要用到文件上傳的的類文件.當然這文件我是改寫成了Zend Framework里的插件形式...Upload.php部分文件說明如下,(我這里只給出部分程序,也就是簡單的多文件上傳類):
<?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;
?>
第二步:在我們以前寫留言本的教程里..找到當時的控制器..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');//顯示模版腳文件
}
第三步:在我們的View模板文件夾中加入上傳功能Form表單..:這里我在里加多加了一個upload.phtml模板文件...為了讓大家更好的看清楚怎樣實現(xiàn)上傳..我只寫一個最簡單的上傳文件表單..這樣實現(xiàn)起來就不會太難...我們只要在這個View模板文件里..把它的POST的動作指向到我們upload這個動作就可以上傳文件了..
最后.你要的只是輸入你的網(wǎng)站地址..比如我的:http://127.0.0.1/zendframework/index/upload/ 這個只你在上傳表單里選擇圖片文件..你就可以上傳了..沒有錯的話.你剛上傳的文件會在網(wǎng)站目錄zendframework/public/upload/這個文件夾下面..應試不會有錯..因為我的這里只控制上傳為圖片文件..你可以改成你自己想要上傳的其它文件..
更多關于zend相關內(nèi)容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優(yōu)秀開發(fā)框架總結》、《Yii框架入門及常用技巧總結》、《ThinkPHP入門教程》、《php面向對象程序設計入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于Zend Framework框架的PHP程序設計有所幫助。
相關文章
PHP使用GIFEncoder類生成gif動態(tài)滾動字幕
這篇文章主要介紹了PHP使用GIFEncoder類生成gif動態(tài)滾動字幕,文字滾動分為兩種情況,一種為水平滾動,一種為垂直滾動,需要的朋友可以參考下2014-07-07
ThinkPHP 3.2.3實現(xiàn)加減乘除圖片驗證碼
這篇文章主要為大家詳細介紹了ThinkPHP 3.2.3實現(xiàn)加減乘除圖片驗證碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下2018-12-12
PHP + plupload.js實現(xiàn)多圖上傳并顯示進度條加刪除實例代碼
本篇文章主要介紹了PHP + plupload.js實現(xiàn)多圖上傳并顯示進度條加刪除實例代碼。具有一定的參考價值,有興趣的可以了解一下。2017-03-03

