了解PHP檔案上傳相關知識

2020-07-16 10:05:53
下面本篇文章給大家介紹一下PHP檔案上傳的相關知識。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有所幫助。

一、檔案上傳的種類

1、圖片檔案 image/gif image/jpg image/jpeg iamge/png image/x-png

2、PHP可以上傳多種型別的檔案,如word、文字檔案、Excel檔案、PPT檔案、二進位制檔案、PDF檔案、視訊及音訊檔

二、表單特性

1、enctype屬性必須為multipart/form-data 表示上傳二進位制資料

2、input標籤的type屬性為file

	<form action="test.php" enctype="multipart/form-data" method="post">
		<input type="file" name="file">
		<input type="submit" value="上傳">
	</form>	

三、全域性變數$_FILES

1、簡介:是一個二維資料,用於接收上傳檔案的資訊

2、$_FILES[][‘name’] 存放用戶端檔案系統的檔案的名稱

3、$_FILES[][‘type’] 存放用戶端傳遞的檔案的型別

4、$_FILES[][‘size’] 存放檔案的位元組大小

5、$_FILES[][‘tmp_name’] 存放檔案被上傳後在伺服器儲存的臨時全路徑

6、$_FILES[][‘error’] 存放檔案上傳的錯誤程式碼

  • 0 表示沒有發生任何錯誤

  • 1 上傳檔案的大小超出PHP設定的約定值

  • 2 上傳檔案的大小超出HTML設定的約定值

  • 3 表示檔案部分上傳

  • 4 表示沒有上傳任何檔案

	//獲得上傳檔案名字
	echo $_FILES['file']['name'];//輸出 1.jpg
	echo '<br>';

	//獲得上傳檔案型別
	echo $_FILES['file']['type'];//輸出 image/jpeg
	echo '<br>';

	//獲得上傳檔案大小,以位元組為單位
	echo $_FILES['file']['size'];//輸出 31019
	echo '<br>';

	//獲得臨時檔案的路徑
	echo $_FILES['file']['tmp_name'];//輸出 G:xampptmpphpED8A.tmp
	echo '<br>';

	//獲得檔案上傳的錯誤程式碼,不同的錯誤程式碼對應不同的錯誤
	echo $_FILES['file']['error'];//輸出 0
	echo '<br>';

四、檔案上傳

move_uploaded_file()

將存放在臨時目錄下的上傳檔案拷貝到一個新的位置

	//判斷是否上傳成功
	if(!$_FILES['file']['error']){

		//判斷是否有uploads目錄,沒有則建立這個目錄
		if(!is_dir('uploads')){
			mkdir('uploads');
		}

		//獲取檔名,建立檔案放置的位置
		$filepath = 'uploads/'.$_FILES['file']['name'];

		//將臨時檔案移動到指定位置
		move_uploaded_file( $_FILES['file']['tmp_name'],$filepath);

		//移動成功後,可以在uploads目錄中看到上傳的檔案
	}

推薦學習:PHP視訊教學

以上就是了解PHP檔案上傳相關知識的詳細內容,更多請關注TW511.COM其它相關文章!