PHP實現上傳視頻的功能


首先前台HTML表單代碼如下:

 1 <html>
 2 <head>
 3     <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
 4     <title>PHP中文網上傳視頻</title>
 5 
 6 </head>
 7 <body>
 8 <form action='./upload.php' method=post enctype="multipart/form-data">
 9     <input type="hidden" name="MAX_FILE_SIZE" value="2000000000">
10     <input type=file name=upfile size=20>
11     <input type=submit value='上傳文件'>
12 </form>
13 </body>
14 </html>

前端頁面效果如下:

 

然后后台處理上傳視頻的PHP代碼如下:

 1 <?php
 2 /**
 3  * PHP上傳視頻
 4  */
 5 $upfile = $_FILES['upfile'];
 6 
 7 function upload_file($files, $path = "./upload", $imagesExt = ['jpg', 'png', 'jpeg', 'gif', 'mp4'])
 8 {
 9     // 判斷錯誤號
10     if (@$files['error'] == 00) {
11         // 判斷文件類型
12         $ext = strtolower(pathinfo(@$files['name'], PATHINFO_EXTENSION));
13         if (!in_array($ext, $imagesExt)) {
14             return "非法文件類型";
15         }
16 
17         // 判斷是否存在上傳到的目錄
18         if (!is_dir($path)) {
19             mkdir($path, 0777, true);
20         }
21 
22         // 生成唯一的文件名
23         $fileName = md5(uniqid(microtime(true), true)) . '.' . $ext;
24 
25         // 將文件名拼接到指定的目錄下
26         $destName = $path . "/" . $fileName;
27 
28         // 進行文件移動
29         if (!move_uploaded_file($files['tmp_name'], $destName)) {
30             return "文件上傳失敗!";
31         }
32         return "文件上傳成功!";
33     } else {
34         // 根據錯誤號返回提示信息
35         switch (@$files['error']) {
36             case 1:
37                 echo "上傳的文件超過了 php.ini 中 upload_max_filesize 選項限制的值";
38                 break;
39             case 2:
40                 echo "上傳文件的大小超過了 HTML 表單中 MAX_FILE_SIZE 選項指定的值";
41                 break;
42             case 3:
43                 echo "文件只有部分被上傳";
44                 break;
45             case 4:
46                 echo "沒有文件被上傳";
47                 break;
48             case 6:
49             case 7:
50                 echo "系統錯誤";
51                 break;
52         }
53     }
54 
55 }
56 
57 echo upload_file($upfile);
58 
59 ?>

那么在這個PHP代碼中,我們定義了一個upload_file的上傳函數,通過這個函數不僅可以實現視頻上傳還能實現圖片上傳。

並且已經通過詳細的注釋給大家介紹了每一步操作的含義,方便大家參考學習。

最后我們可以選擇上傳一段視頻進行測試,結果如下:

 

鏈接:https://mp.weixin.qq.com/s/Go5tzd1_omhgNyn6d3BKzA


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM