PHP H5圖片上傳
隨著移動(dòng)互聯(lián)網(wǎng)的發(fā)展,需求越來越多的網(wǎng)站都需要增加用戶上傳圖片的功能。本篇文章將介紹如何使用PHP H5實(shí)現(xiàn)圖片上傳功能。PHP H5是一種支持目前主流瀏覽器和HTML5的服務(wù)器端開發(fā)語言,目前在市場(chǎng)中被廣泛應(yīng)用。以下將以一個(gè)簡(jiǎn)單的例子來說明PHP H5如何實(shí)現(xiàn)照片上傳的功能。
第一步: HTML 5表單
在HTML 5中通過一行簡(jiǎn)單的代碼即可實(shí)現(xiàn)照片上傳表單:
<form id="form" method="post" enctype="multipart/form-data"><label>選擇照片: <input type="file" id="file" name="file" accept="image/*" /></label><br /><input type="submit" value="上傳" /></form>代碼解釋: - enctype屬性指定表單的編碼類型,multipart/form-data表示多個(gè)數(shù)據(jù)項(xiàng) - input label用于標(biāo)識(shí)輸入框和輸入框標(biāo)簽 第二步: PHP 處理 使用PHP來處理表單數(shù)據(jù)和上傳文件,示例代碼如下:
<?php if ($_SERVER["REQUEST_METHOD"] == "POST" && isset($_FILES["file"])) { $errors = array(); $file_name = $_FILES["file"]["name"]; $file_size = $_FILES["file"]["size"]; $file_tmp = $_FILES["file"]["tmp_name"]; $file_type = $_FILES["file"]["type"]; $file_ext = strtolower(end(explode(".", $_FILES["file"]["name"]))); $extensions = array("jpeg", "jpg", "png"); if (in_array($file_ext, $extensions) === false) { $errors[] = "文件擴(kuò)展名不符合要求: JPEG, JPG, PNG."; } if ($file_size >2097152) { $errors[] = "文件過大,不能超過2MB."; } if (empty($errors) == true) { move_uploaded_file($file_tmp,"uploads/" . $file_name); echo "上傳成功:'uploads/" . $file_name."'"; } else { echo implode(" ", $errors); } } ?>代碼解釋: - 判斷提交數(shù)據(jù)的方式是否為POST方法 - 從_FILE數(shù)組中獲取上傳的文件名、文件大小、臨時(shí)文件名和文件類型文件擴(kuò)展名 - 檢查文件擴(kuò)展名限制以確保上傳文件的正確性 - 檢查文件大小限制,確保上傳文件的大小符合要求 - 如果通過了前兩個(gè)檢查并且沒有別的錯(cuò)誤,將通過move_uploaded_file函數(shù)上傳文件 第三步: 上傳照片 使用瀏覽器,打開含有上傳表單的頁面,上傳照片即可,上傳過程如下圖所示: 在上圖中,“Green Sea.jpg”是上傳的照片名字,位于“uploads”文件夾中。 總結(jié) 本文已經(jīng)講解了如何使用PHP H5實(shí)現(xiàn)照片上傳的基本功能,網(wǎng)站中圖片上傳功能是很常見的功能,了解如何使用PHP實(shí)現(xiàn)圖片上傳功能將有助于開發(fā)人員實(shí)現(xiàn)更高質(zhì)量的工作,在開發(fā)過程中如遇到任何問題,請(qǐng)查看PHP官方文檔以獲取更多幫助。