首頁 後端開發 php教程 用PHP實作一個簡易版文件上傳功能(超詳細講解)

用PHP實作一個簡易版文件上傳功能(超詳細講解)

Nov 18, 2019 pm 06:01 PM
php檔案上傳

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”表示聲明表單中會有圖片發送, action=”” 表示目前頁面提交,method=”post”傳輸方式為post

<?php
if(is_uploaded_file($_FILES[&#39;upfile&#39;][&#39;tmp_name&#39;])){
$upfile=$_FILES["upfile"];
$name=$upfile[&#39;name&#39;];
$tmp_name=$upfile["tmp_name"];//上传文件的临时存放路径
move_uploaded_file($tmp_name,&#39;up/&#39;.$name);
echo "上传成功";
}
else{
    echo "您还没有上传文件";
}
?>
登入後複製

關鍵字總結

is_uploaded_file 表示驗證檔案是否是透過HTTP POST 上傳的,條件成立才可以正常上傳

$_FILES['upfile']['tmp_name']) 表示取得到目前傳輸圖片的本機位置

move_uploaded_file($tmp_name,'up/'.$name); ,此方法有兩個參數,第一個為上傳的檔案的檔案名,第二個為移動檔案到這個位置

#2. 檔案的寫入與讀取

首先介紹寫入:

     $myfile = fopen("comment/" .time().&#39;-&#39;. rand(0, 1000) . ".comment", "a") or die("Unable to open file!");
        $txt = time().&#39;<br />&#39;;
        fwrite($myfile, $txt);
        fclose($myfile);
登入後複製

其中fopen函數的作用為寫入數據,第一個參數為寫入檔案具體路徑,第二個表示將讀取到得資料放入該檔案中,其中文件名採用時間戳加上隨機數構成,後綴名為comment,a表示寫入方式打開,將檔案指標指向檔案結尾。如果檔案不存在則嘗試建立它,or die表示執行失敗,就執行Unable to open file!(無法開啟檔案)。

第二句表示數據,數據可以是post傳輸的,也可以是get,隨意

第三句fwrite表示寫入文件,第一個參數為寫入文件的位置,第二個為要寫入的資料

第四句表示關閉該文件,表示寫入完畢,本次執行完畢

$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));//指定读取大小,这里把整个文件内容读取出来
        echo $str = str_replace("\r\n", "<br />", $str);
    }
}
登入後複製

在介紹讀取:

關鍵語句為

第一句:首先使用(glob)先找到需要讀取的文件,如果有很多符合條件的文件,那麼他們將會使用數組進行保存,讀取的時候使用遍歷陣列就可以了

第二句: rsort為降序排序,主要是為了滿足特定條件下的排序,例如依照發佈時間

第三句:因為可以透過var_dump,print等知道glob是以陣列的形式保存路徑的,所以我們使用count算出總數,然後一條條遍歷,便可以得到需要讀取的檔案路徑

第四句:$file_path取得檔案路徑

第五句:file_exists判斷文件是否存在

第六句:fopen讀取該文件,並且以唯讀的方式開啟

第七句:fread第一個參數表示讀取的東西,第二個表示讀取的檔案的大小,這裡也就表示有多少讀多少

第八句:str_replace取代函數,表示將$str中的所有的\r\ n都替換成br(表示換行,換成網頁中的換行)

以上是用PHP實作一個簡易版文件上傳功能(超詳細講解)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP檔案上傳教學:如何使用HTML表單上傳文件 PHP檔案上傳教學:如何使用HTML表單上傳文件 Jun 11, 2023 am 08:10 AM

PHP檔案上傳教學:如何使用HTML表單上傳檔案在進行網站開發過程中,檔案上傳功能是非常常見的需求。而PHP作為一種流行的伺服器腳本語言,可以很好地實現文件上傳功能。本文將詳細介紹如何使用HTML表單完成檔案上傳。一、HTML表單首先,我們需要使用HTML表單建立一個檔案上傳的頁面。 HTML表單中需要設定enctype屬性為「multipart/form-

在PHP如何處理文件上傳? 在PHP如何處理文件上傳? May 11, 2023 pm 10:31 PM

隨著網路技術的不斷發展,文件上傳功能已成為許多網站不可或缺的一部分。在PHP語言中,我們可以透過一些類別庫和函數來處理文件上傳。本文將重點放在PHP中的文件上傳處理方法。一、表單設定在HTML表單中,我們需要設定enctype屬性為“multipart/form-data”,以支援檔案上傳。程式碼如下:&lt;formaction="upload.

PHP檔案上傳安全指南:如何使用$_FILES數組取得上傳檔案信息 PHP檔案上傳安全指南:如何使用$_FILES數組取得上傳檔案信息 Jul 30, 2023 pm 06:53 PM

PHP檔案上傳安全指南:如何使用$_FILES陣列取得上傳檔案資訊摘要:檔案上傳是Web開發中常見的功能之一。然而,不正確的文件上傳實作可能會導致安全漏洞,為應用程式帶來潛在的風險。本文將介紹如何使用PHP的$_FILES數組來安全地獲取上傳文件的信息,並結合一些程式碼範例來幫助讀者更好地理解。設定適當的檔案上傳限制在PHP中,我們可以使用php.ini檔案來

處理PHP檔案上傳編碼錯誤並產生對應報錯提示的技巧 處理PHP檔案上傳編碼錯誤並產生對應報錯提示的技巧 Aug 06, 2023 am 09:51 AM

處理PHP檔案上傳編碼錯誤並產生對應報錯提示的技巧在開發Web應用程式中,檔案上傳是一個非常常見的需求。而在處理PHP檔案上傳時,我們常常會遇到編碼錯誤的情況。本文將介紹一些處理PHP檔案上傳編碼錯誤並產生對應報錯提示的技巧。在PHP中,檔案上傳是透過$_FILES全域變數來存取上傳的檔案的。透過$_FILES可以取得上傳檔案的名稱、大小、臨時檔案路徑等信息

如何透過PHP編寫一個簡單的檔案上傳和下載功能 如何透過PHP編寫一個簡單的檔案上傳和下載功能 Sep 24, 2023 am 08:12 AM

如何透過PHP編寫一個簡單的檔案上傳和下載功能隨著網路科技的發展,檔案上傳和下載功能成為了許多網站必備的功能之一。透過編寫一個簡單的文件上傳和下載功能,可以讓使用者方便地上傳和下載文件,提高使用者體驗。本文將介紹如何使用PHP編寫一個簡單的檔案上傳和下載功能,並提供具體的程式碼範例。一、文件上傳功能的實作建立表單首先,在HTML頁面建立表單,用於使用者上傳文

如何使用PHP開發CMS中的檔案上傳與下載模組 如何使用PHP開發CMS中的檔案上傳與下載模組 Jun 21, 2023 pm 12:13 PM

隨著網路的不斷發展,越來越多的網站都需要檔案上傳和下載功能。作為一種開源的伺服器端腳本語言,PHP有著廣泛的應用場景和業界認可。而CMS(ContentManagementSystem,內容管理系統)是我們常見的網站類型之一,本文將討論如何使用PHP開發CMS中的檔案上傳與下載模組。一、文件上傳模組1.上傳文件的基本原理文件上傳的基本原理是將文件從客戶

PHP檔案上傳方法及常見問題總結 PHP檔案上傳方法及常見問題總結 Jun 08, 2023 pm 09:27 PM

PHP檔案上傳方法及常見問題彙總檔案上傳是Web開發常見的功能之一,可用於使用者上傳個人資料、檔案等。 PHP提供方便的文件上傳處理方法,本文將詳細介紹PHP文件上傳方法及常見問題摘要。一、PHP檔案上傳方法HTML表單實作檔案上傳需要使用HTML表單,其中需要設定enctype屬性為"multipart/form-data",這樣瀏覽器

如何使用PHP實現一個簡單的線上檔案上傳和下載系統 如何使用PHP實現一個簡單的線上檔案上傳和下載系統 Sep 24, 2023 pm 03:13 PM

如何使用PHP實現一個簡單的線上檔案上傳和下載系統,需要具體程式碼範例在網路時代,檔案的傳輸和共享是非常常見的需求。無論是個人或企業,都需要方便、快速地處理文件的上傳和下載操作。而PHP作為一種強大的伺服器端腳本語言,提供了豐富的函數和工具,可以方便地實現文件上傳和下載功能。本文將介紹如何使用PHP實作一個簡單的線上檔案上傳和下載系統,並提供詳細的程式碼範例。

See all articles