首页 文章

如何让PHP文件扩展名? [重复]

提问于
浏览
402

可能重复:如何在PHP中提取文件扩展名?

我希望获得我上传的图像的文件扩展名,但我只是得到了一个数组 .

$userfile_name = $_FILES['image']['name'];
$userfile_extn = explode(".", strtolower($_FILES['image']['name']));

有没有办法只得到扩展本身?

5 回答

  • 11

    无需使用字符串函数 . 您可以使用的东西,实际上是专门为你想要的东西:pathinfo()

    $path = $_FILES['image']['name'];
    $ext = pathinfo($path, PATHINFO_EXTENSION);
    
  • 21

    这也能发挥作用:

    $array = explode('.', $_FILES['image']['name']);
    $extension = end($array);
    
  • 1060

    一个更好的方法是使用strrpos substr(比爆炸更快):

    $userfile_name = $_FILES['image']['name'];
    $userfile_extn = substr($userfile_name, strrpos($userfile_name, '.')+1);
    

    但是,以检查文件的类型,使用mime_content_type是一个更好的办法:http://www.php.net/manual/en/function.mime-content-type.php

  • 23

    你可以用这个尝试MIME类型

    $image = getimagesize($_FILES['image']['tmp_name']);
    

    $image['mime'] 将返回的MIME类型 .

    此功能不需要GD库 . 你可以找到的文档here .

    这将返回图像的mime类型 .

    有些人使用 $_FILES["file"]["type"] ,但它不像浏览器给出的那样可靠,而不是PHP .

    您可以使用 pathinfo() 作为ThiefMaster建议检索,图像扩展 .

    首先确保在开发过程中成功上载图像,然后再对图像执行任何操作 .

  • 50

    怎么样

    $ext = array_pop($userfile_extn);
    

相关问题