首頁  >  文章  >  每日程式設計  >  如何實現PHP上傳影片的功能? (圖文+影片)

如何實現PHP上傳影片的功能? (圖文+影片)

藏色散人
藏色散人原創
2018-10-11 13:47:4028786瀏覽

本篇文章主要跟大家講解PHP上傳影片的具體實作方法。

實作PHP影片上傳的功能,對於新手來說,可能有一定的難度。但透過本篇文章的介紹,相信大家都能熟練相關知識。

那麼在之前的文章【PHP檔案上傳方法詳解及其資訊解析】以及【PHP實作多個檔案上傳的簡單方法有哪些? 】中,已經為大家詳解過關於PHP實作檔案上傳及多檔案上傳的功能,有需要的朋友可以先閱讀參考這兩篇文章,有助本章內容理解。

其實影片也是一種文件,他們的原理基本上都是一樣的。

下面我們再透過具體的程式碼範例,為大家詳細介紹PHP上傳影片的實作方法。

首先前台HTML表單程式碼如下:

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>PHP中文网上传视频</title>
</head>
<body>
<form action=&#39;demo42.php&#39; method=post enctype="multipart/form-data">
    <input type="hidden" name="MAX_FILE_SIZE" value="2000000000">
    <input type=file name=upfile size=20>
    <input type=submit value=&#39;上传文件&#39;>
</form>
</body>
</html>

「前台頁面效果如下:

如何實現PHP上傳影片的功能? (圖文+影片)

然後後台處理上傳影片的PHP程式碼如下:

<?php
/**
 * PHP上传视频
 */
$upfile = $_FILES[&#39;upfile&#39;];

function upload_file($files, $path = "./upload",$imagesExt=[&#39;jpg&#39;,&#39;png&#39;,&#39;jpeg&#39;,&#39;gif&#39;,&#39;mp4&#39;])
{
    // 判断错误号
    if (@$files[&#39;error&#39;] == 00) {
        // 判断文件类型
        $ext = strtolower(pathinfo(@$files[&#39;name&#39;],PATHINFO_EXTENSION));
        if (!in_array($ext,$imagesExt)){
            return "非法文件类型";
        }
        // 判断是否存在上传到的目录
        if (!is_dir($path)){
            mkdir($path,0777,true);
        }
        // 生成唯一的文件名
        $fileName = md5(uniqid(microtime(true),true)).&#39;.&#39;.$ext;
        // 将文件名拼接到指定的目录下
        $destName = $path."/".$fileName;
        // 进行文件移动
        if (!move_uploaded_file($files[&#39;tmp_name&#39;],$destName)){
            return "文件上传失败!";
        }
        return "文件上传成功!";
    } else {
        // 根据错误号返回提示信息
        switch (@$files[&#39;error&#39;]) {
            case 1:
                echo "上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值";
                break;
            case 2:
                echo "上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值";
                break;
            case 3:
                echo "文件只有部分被上传";
                break;
            case 4:
                echo "没有文件被上传";
                break;
            case 6:
            case 7:
                echo "系统错误";
                break;
        }
    }
}
echo upload_file($upfile);
?>

那麼在這個PHP程式碼中,我們定義了一個upload_file的上傳函數,透過這個函數不僅可以實現影片上傳還能實現圖片上傳。並且已經透過詳細的註解給大家介紹了每一步操作的意義,方便大家參考學習。

最後我們可以選擇上傳一段影片進行測試,結果如下:

如何實現PHP上傳影片的功能? (圖文+影片)

如何實現PHP上傳影片的功能? (圖文+影片)

這篇文章就是關於PHP影片上傳的具體實作方法介紹,希望對需要的朋友有幫助!

想要了解更多的PHP知識,可以關注PHP中文網PHP影片教學,歡迎大家參考學習!

以上是如何實現PHP上傳影片的功能? (圖文+影片)的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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