這篇文章運用簡單易懂的例子給大家介紹PHP實現(xiàn)文件上傳功能,代碼非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。
創(chuàng)新互聯(lián)建站長期為成百上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為農(nóng)安企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都網(wǎng)站制作,農(nóng)安網(wǎng)站改版等技術(shù)服務(wù)。擁有10多年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
1. php簡化版的圖片上傳(沒有各種驗證)
<form action="" enctype="multipart/form-data" method="post" > 請選擇需要上傳的文件:<input type="file" name="upfile" /><br> <input type="submit" value="上傳" /> </form>
首先我們需要在form表單中加入 enctype=”multipart/form-data”表示聲明表單中會有圖片發(fā)送, action=”” 表示當(dāng)前頁面提交,method=”post”傳輸方式為post
<?php if(is_uploaded_file($_FILES['upfile']['tmp_name'])){ $upfile=$_FILES["upfile"]; $name=$upfile['name']; $tmp_name=$upfile["tmp_name"];//上傳文件的臨時存放路徑 move_uploaded_file($tmp_name,'up/'.$name); echo "上傳成功"; } else{ echo "您還沒有上傳文件"; } ?>
關(guān)鍵詞總結(jié)
is_uploaded_file 表示驗證文件是否是通過 HTTP POST 上傳的,條件成立才可以正常上傳
$_FILES[‘upfile’][‘tmp_name’]) 表示獲取到當(dāng)前傳輸圖片的本地位置
move_uploaded_file($tmp_name,’up/’.$name); ,該方法有兩個參數(shù),第一個為上傳的文件的文件名,第二個為移動文件到這個位置
2. 文件的寫入與讀取
首先介紹寫入:
$myfile = fopen("comment/" .time().'-'. rand(0, 1000) . ".comment", "a") or die("Unable to open file!"); $txt = time().'<br />'; fwrite($myfile, $txt); fclose($myfile);
其中fopen函數(shù)的作用為寫入數(shù)據(jù),第一個參數(shù)為寫入文件具體路徑,第二個表示將讀取到得數(shù)據(jù)放入該文件中,其中文件名采用時間戳加上隨機數(shù)構(gòu)成,后綴名為comment,a表示寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建它,or die表示執(zhí)行失敗,就執(zhí)行Unable to open file!(無法打開文件)。
第二句表示數(shù)據(jù),數(shù)據(jù)可以是post傳輸?shù)模部梢允莋et,隨意
第三句fwrite表示寫入文件,第一個參數(shù)為寫入文件的位置,第二個為要寫入的數(shù)據(jù)
第四句表示關(guān)閉該文件,表示寫入完畢,本次執(zhí)行完畢
$list = glob("comment/*.comment"); rsort($list); for ($i = 0; count($list) > $i; $i++) { $file_path = $list[$i]; if (file_exists($file_path)) { $fp = fopen($file_path, "r"); $str = fread($fp, filesize($file_path));//指定讀取大小,這里把整個文件內(nèi)容讀取出來 echo $str = str_replace("\r\n", "<br />", $str); } }
在介紹讀?。?/p>
關(guān)鍵語句為
第一句:首先使用(glob)先找到需要讀取的文件,如果有很多符合條件的文件,那么他們將會使用數(shù)組進行保存,讀取的時候使用遍歷數(shù)組就可以了
第二句: rsort為降序排序,主要是為了滿足特定條件下的排序,例如按照發(fā)布時間
第三句:因為可以通過var_dump,print等知道glob是以數(shù)組的形式保存路徑的,所以我們使用count算出總數(shù),然后一條條遍歷,便可以得到需要讀取的文件路徑
第四句:$file_path獲取文件路徑
第五句:file_exists判斷文件是否存在
第六句:fopen讀取該文件,并且以只讀的方式打開
第七句:fread第一個參數(shù)表示讀取的東西,第二個表示讀取的文件的大小,這里也就表示有多少讀多少
第八句:str_replace替換函數(shù),表示將$str中的所有的\r\n都替換成br(表示換行,換成網(wǎng)頁中的換行)
關(guān)于PHP實現(xiàn)文件上傳功能就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
網(wǎng)站題目:PHP實現(xiàn)文件上傳功能
URL鏈接:http://www.rwnh.cn/article24/gcgcce.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、搜索引擎優(yōu)化、網(wǎng)站設(shè)計公司、小程序開發(fā)、網(wǎng)站設(shè)計、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)