短视频app源码(小视频源码)开发中,考虑到后期用户上传短视频时需要大量应用到存储功能,故而需要实现这一功能,具体需要怎么做呢,本文将以云豹短视频app源码为例,为大家进行讲解。
一、阅读前请注意:
1、本文例子中的云豹短视频app源码,后台开发语言为PHP,框架为thinkPHP
2、因云存储sdk方便接入、性能优良,故选用云存储sdk
3、PHP腾讯云对象云存储,下载官方SDK, 结合官方文档进行简单的介绍

短视频app源码、小视频源码存储功能如何实现?_直播软件  H5  直播技术

二、短视频app源码接入存储功能前的准备工作:
腾讯云官方文档及sdk地址:https://cloud.tencent.com/document/product/436/12266

三、短视频app源码接入存储功能的具体操作:
将下载下来的SDk文件放到可以加载到的地方,里面有很多的文件,我们只需要加载里面的autoload.php(根据官方文档方法,进行安装即可,共三种方式),这个文件就可以帮助我们实现SDk文件的引入。它是一个多类的结合文件,我们需要用到腾讯云SDk类里面的多个方法。

四、短视频app源码接入存储sdk的代码示例 (仅限于thinkPHP框架):

Public function adminUploadFiles($files=''){
    $rs=array('code'=>1000,'data'=>[],'msg'=>'上传失败');
	/* 腾讯云 */
	require_once(SITE_PATH.'sdk/qcloud/autoload.php');
	$folder = '/img'; //存储路径
	$file_name = $_FILES["file"]["name"]; 
	$src = $_FILES["file"]["tmp_name"];
	if($files){
		$file_name = $files["file"]["name"];
		$src = $files["file"]["tmp_name"];
	}
	$fnarray=explode('.', $file_name);
	$file_suffix = strtolower(end($fnarray)); //后缀名
	$dst = $folder.'/'.date('YmdHis').rand(1,999).'.'.$file_suffix;
	$cosClient = new \Qcloud\Cos\Client(array(
		'region' => 'region', #地域,如ap-guangzhou,ap-beijing-1
		'credentials' => array(
			'secretId' => 'secretId',  //腾讯云id
			'secretKey' => 'secretKey', //腾讯云key
		),
	));
	// 若初始化 Client 时未填写 appId,则 bucket 的命名规则为{name}-{appid} ,此处填写的存储桶名称必须为此格式
	$bucket = '腾讯云存储名称'.'-'.'腾讯云id';
	try {
		$result = $cosClient->upload(
			$bucket = $bucket,
			$key = $dst,
			$body = fopen($src, 'rb')
		);
		$url = $result['Location'];//上传成功后返回的链接
	} catch (\Exception $e) {
		$rs['msg']=$e->getMessage();  //错误提示
		return $rs;
	}
    $rs['code']=0;
    $rs['data']['url']=$url;
	return $rs;
}

在短视频app源码中,用户头像、短视频文件等文件数据上传的量是很大的,数据库无法全部承担,故而只有文字数据(用户名等)会被存储在数据库中,像短视频、用户头像等内容会被存储在专门的区域,比如服务器磁盘或三方云存储上,接入上述代码后,将可以在短视频app源码中实现存储功能。
声明:本文由云豹科技原创整理,部分内容来自腾讯云官网,转载请注明云豹科技整理