




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第ThinkPHP框架實(shí)現(xiàn)FTP圖片上傳功能示例本文實(shí)例講述了ThinkPHP框架實(shí)現(xiàn)FTP圖片上傳功能。分享給大家供大家參考,具體如下:
背景:
圖片上傳功能應(yīng)該是個(gè)極為普遍的,在此參考了ThinkPHP框架中的集成方法整理了一下FTP圖片的上傳功能,這樣方便在后臺(tái)操作時(shí),把有關(guān)的圖片直接上傳到線上的圖片服務(wù)器,避免大流量訪問的圖片加載緩慢,降低網(wǎng)站的訪問壓力,不合理之處,敬請(qǐng)指摘...
操作:
1.前端設(shè)計(jì)
這里主要為了測(cè)試功能的實(shí)現(xiàn),使用最簡(jiǎn)單的設(shè)計(jì),既方便參考又有利于后期的功能擴(kuò)展。如下附upload.html主要代碼,著重注意紅框圈出的代碼,其中css樣式比較簡(jiǎn)單,需要的可以參考后面的源代碼。
2.后臺(tái)控制器設(shè)計(jì)
config.class.php主要代碼如下所示,其中設(shè)計(jì)的表“conf”在此只需用兩個(gè)字段就好——'tag','value',可以使用簡(jiǎn)單的varchar類型。
publicfunctionupload(){
if(IS_POST){
foreach($_FILESas$key=$value){
$img=handleImg($key);
$furl=C('REMOTE_ROOT').$img;
if($img){
ftp_upload($furl,$img);
$saveData['value']=$img;
M('conf')
-where("tag='".$key."'")
-save($saveData);
$this-success('FTP測(cè)試完成',U('Config/upload'),2);
}else{
$imgUrl=M('conf')
-where("tag='upImg'")
-getField('value');
$this-assign('imgUrl',$imgUrl);
$this-display();
3.配置數(shù)據(jù)
在公共配置文件中,進(jìn)行如下常量的數(shù)據(jù)配置,參考代碼如下,注意配置FTP賬號(hào)及密碼的正確性,此處安全起見只是舉例。
//ftp(外網(wǎng)服務(wù)器)上傳文件相關(guān)參數(shù)
'FTP_SEVER'='',//此地址,作為圖片讀取的位置請(qǐng)上線前仔細(xì)確認(rèn)
'FTP_HOST'='',
'WEB_SEVER'='',
'WEB_M_SERVER'='/m',
'FTP_NAME'='fexxxi',//ftp帳戶
'FTP_PWD'='1qxxxxxxw',//ftp密碼
'FTP_PORT'='21',//ftp端口,默認(rèn)為21
'FTP_PASV'=true,//是否開啟被動(dòng)模式,true開啟,默認(rèn)不開啟
'FTP_SSL'=false,//ssl連接,默認(rèn)不開啟
'FTP_TIMEOUT'=60,//超時(shí)時(shí)間,默認(rèn)60,單位s
'REMOTE_ROOT'='/',//圖片服務(wù)器根目錄
4.引入文件
以我的代碼為例,在此引用了兩個(gè)文件,其中的FTP.class.php放在了'/Library/Think'目錄下;Upload.class.php放在了'/Library/Org/Net'目錄下,可根據(jù)自己的使用習(xí)慣自行調(diào)整目錄,只要保證實(shí)例化路徑時(shí)沒問題就可。
5.公共函數(shù)添加
注意添加上文步驟2中使用到的公共函數(shù)。
*圖片上傳的公共處理方法
*@paramstring$fileName圖片上傳的name
*@returnstring圖片的存儲(chǔ)路徑
functionhandleImg($fileName){
if($_FILES[$fileName]['tmp_name']!=""){
$img=$_FILES[$fileName];
$imgUrl=__ROOT__."/public";
$upload=new\Org\Net\Upload($img,$imgUrl);
return$upload-main();
//FTP上傳文件函數(shù)
functionftp_upload($remotefile,$localfile){
$ftp=new\Think\Ftp();
$data['server']=C('FTP_HOST');
$data['username']=C('FTP_NAME');//ftp帳戶
$data['password']=C('FTP_PWD');//ftp密碼
$data['port']=C('FTP_PORT');//ftp端口,默認(rèn)為21
$data['pasv']=C('FTP_PASV');//是否開啟被動(dòng)模式,true開啟,默認(rèn)不開啟
$data['ssl']=C('FTP_SSL');//ssl連接,默認(rèn)不開啟
$data['timeout']=C('FTP_TIMEOUT');//超時(shí)時(shí)間,默認(rèn)60,單位s
$info=$ftp-start($data);
if($info){
if($ftp-put($remotefile,$localfile)){}
$ftp-close();
6.操作截圖
7.提示
對(duì)于這份參考代碼,涉及到的公共方法handleImg()會(huì)先將需要上傳的圖片傳到當(dāng)前操作的網(wǎng)站根目錄,之后又會(huì)通過ftp_upload()將圖片傳到對(duì)應(yīng)的圖片F(xiàn)TP服務(wù)器,從實(shí)現(xiàn)步驟上看第一步多余,主要是開發(fā)過程中的測(cè)試服務(wù)器不符合FTP賬號(hào)要求,同時(shí)又要方便線上內(nèi)容修改的及時(shí)更新,暫沒優(yōu)化,也不麻煩,算留大家一個(gè)自由發(fā)揮的機(jī)會(huì)吧。
源代碼點(diǎn)擊此處本站下載。
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞動(dòng)教育體驗(yàn)課件
- 景區(qū)標(biāo)牌改造方案
- 食堂分餐規(guī)劃方案
- 玉米生產(chǎn)考試題及答案
- 塑膠工程面試題及答案
- 企業(yè)常用面試題及答案
- 清新區(qū)橋梁拆除方案
- 2026版《全品高考》選考復(fù)習(xí)方案生物949 課時(shí)作業(yè)(四十五) 生態(tài)系統(tǒng)的能量流動(dòng)含答案
- 水利管道開挖方案
- 奇葩語(yǔ)文面試題及答案
- DB11-T 751-2025 住宅物業(yè)服務(wù)標(biāo)準(zhǔn)
- 2025年7月國(guó)開電大行管本科《城市管理學(xué)》期末紙質(zhì)考試試題及答案
- 企業(yè)間車輛無(wú)償互借合作協(xié)議
- 中科大水污染控制工程課件04活性污泥法-2活性污泥凈化反應(yīng)影響因素與主要設(shè)計(jì)、運(yùn)行參數(shù)
- 2025年中國(guó)旅游集團(tuán)招聘筆試備考題庫(kù)(帶答案詳解)
- 中國(guó)IBD藍(lán)皮書-中國(guó)炎癥性腸病醫(yī)患認(rèn)知暨生存質(zhì)量報(bào)告:克羅恩病部分
- 住院醫(yī)師規(guī)范化培訓(xùn)匯報(bào)
- 2025至2030中國(guó)電動(dòng)踏板車行業(yè)項(xiàng)目調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
- 中國(guó)公安信息化市場(chǎng)前景預(yù)測(cè)及未來發(fā)展趨勢(shì)報(bào)告
- 糧食機(jī)收減損培訓(xùn)課件
- 2025至2030中國(guó)耐腐蝕高溫合金行業(yè)發(fā)展趨勢(shì)分析與未來投資戰(zhàn)略咨詢研究報(bào)告
評(píng)論
0/150
提交評(píng)論