如何实现PHP上传视频的功能?(图文+视频)

藏色散人
藏色散人 原创
2019-12-20 17:58:00 27603浏览

本篇文章主要给大家讲解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='demo42.php' 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='上传文件'>
</form>
</body>
</html>

前台页面效果如下:

8c351516980eba416bdae502db33dce.png

然后后台处理上传视频的PHP代码如下:

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

function upload_file($files, $path = "./upload",$imagesExt=['jpg','png','jpeg','gif','mp4'])
{
    // 判断错误号
    if (@$files['error'] == 00) {
        // 判断文件类型
        $ext = strtolower(pathinfo(@$files['name'],PATHINFO_EXTENSION));
        if (!in_array($ext,$imagesExt)){
            return "非法文件类型";
        }
        // 判断是否存在上传到的目录
        if (!is_dir($path)){
            mkdir($path,0777,true);
        }
        // 生成唯一的文件名
        $fileName = md5(uniqid(microtime(true),true)).'.'.$ext;
        // 将文件名拼接到指定的目录下
        $destName = $path."/".$fileName;
        // 进行文件移动
        if (!move_uploaded_file($files['tmp_name'],$destName)){
            return "文件上传失败!";
        }
        return "文件上传成功!";
    } else {
        // 根据错误号返回提示信息
        switch (@$files['error']) {
            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的上传函数,通过这个函数不仅可以实现视频上传还能实现图片上传。并且已经通过详细的注释给大家介绍了每一步操作的含义,方便大家参考学习。

最后我们可以选择上传一段视频进行测试,结果如下:

522ad7c38a4778cef0a970bd4312f6f.png

c4529380ce4a059a0eee396a794455b.png

本篇文章就是关于PHP视频上传的具体实现方法介绍,希望对需要的朋友有所帮助!

想要了解更多的PHP知识,可以关注PHP中文网PHP视频教程,欢迎大家参考学习!

以上就是如何实现PHP上传视频的功能?(图文+视频)的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。