我想从网址上传视频文件到我的服务器。这是我的代码。
<?php
set_time_limit(0);
$file_name = "upload/myvideo.mp4";
$video_file_url = "http://example.com/somevideo.mp4";
file_put_contents($file_name, file_get_contents($video_file_url));
?>
现在问题是$ video_file_url包含不同类型的视频,如.mp4,.3gp或.flv。我不知道如何从file_get_contents获取文件扩展名,$ file_name总是可能与我在代码中提到的不一样。
我应该使用tmpFile.tmp名称保存此文件吗?从其他服务器复制时,只需使用有效的名称和扩展名重命名该文件?
答案 0 :(得分:1)
pathinfo()和parse_url()是获取扩展所需的内容。
$extension = pathinfo(parse_url($video_file_url, PHP_URL_PATH), PATHINFO_EXTENSION);
顺便说一下,对于你用来下载文件的部分代码,我建议你看一下这个问题,因为在这种情况下,file_get_contents()的效率非常低:Download File to server from URL
答案 1 :(得分:0)
试试这个功能mime_content_type