如何通过file_get_contents获取文件扩展名

时间:2016-07-23 08:26:42

标签: php

我想从网址上传视频文件到我的服务器。这是我的代码。

<?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名称保存此文件吗?从其他服务器复制时,只需使用有效的名称和扩展名重命名该文件?

2 个答案:

答案 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