php怎么获得上传图片后缀

fiy 其他 186

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    PHP可以通过使用以下方法来获取上传图片的后缀:

    1. 使用$_FILES数组来获取上传文件的信息。$_FILES数组是PHP中预定义的一个全局变量,用于存储上传文件的相关信息。

    “`php
    $file = $_FILES[‘file’][‘name’]; // 获取上传文件的原始名称
    $ext = pathinfo($file, PATHINFO_EXTENSION); // 获取文件的后缀名
    “`

    上述代码中,`$_FILES[‘file’][‘name’]`获取了上传文件的原始名称,而`pathinfo()`函数则可以通过传递文件路径来获取文件的详细信息,其中`PATHINFO_EXTENSION`参数用于指定获取的是文件的扩展名。

    2. 使用explode()函数来分割文件名,并获取最后一个元素作为文件的后缀名。

    “`php
    $file = $_FILES[‘file’][‘name’]; // 获取上传文件的原始名称
    $parts = explode(‘.’, $file); // 使用.将文件名分割成数组
    $ext = end($parts); // 获取数组中的最后一个元素作为文件的后缀名
    “`

    上述代码中,`explode()`函数将文件名按照`.`进行分割,分割后的结果会保存在一个数组中,`end()`函数用于获取数组中的最后一个元素作为文件的后缀名。

    无论使用哪种方法,最终都能够获取到上传图片的后缀名,可以根据后缀名来进行相应的处理。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在PHP中,可以通过一些方法来获取上传图片文件的后缀。下面是几种常见的方法:

    1. 使用原生PHP的方法来获取后缀,可以通过字符串处理函数和文件路径函数来实现。首先,使用pathinfo函数获取文件的路径信息,然后使用explode函数将路径分割成数组,最后使用end函数获取数组中的最后一个元素,即为文件的后缀名。

    “`php
    $filename = $_FILES[“file”][“name”];
    $ext = end(explode(“.”, $filename));
    “`

    2. 使用$_FILES数组中的type属性来获取后缀。$_FILES数组是PHP中用于处理上传文件的全局变量,其中的type属性记录了文件的MIME类型,可以通过该属性截取出后缀。

    “`php
    $mime = $_FILES[“file”][“type”];
    $ext = substr($mime, strpos($mime, “/”) + 1);
    “`

    3. 使用getimagesize函数来获取后缀。getimagesize函数可以获取图像文件的信息,包括宽度、高度和MIME类型等。通过第三个返回值可以获取到MIME类型,再通过explode函数截取出后缀。

    “`php
    $filename = $_FILES[“file”][“tmp_name”];
    $info = getimagesize($filename);
    $mime = $info[“mime”];
    $ext = end(explode(“/”, $mime));
    “`

    4. 对于只允许上传图片文件的场景,可以使用$_FILES数组中的name属性来获取后缀,并使用正则表达式来匹配后缀。这样可以过滤掉非图片文件的上传。

    “`php
    $filename = $_FILES[“file”][“name”];
    if (preg_match(“/\.(jpg|jpeg|png|gif)$/i”, $filename, $matches)) {
    $ext = strtolower($matches[1]);
    } else {
    echo “不支持该文件类型”;
    }
    “`

    5. 当然,也可以使用第三方库来处理上传文件,并方便地获取文件的后缀。比如,使用PHP的图片处理库GD,可以通过image_type_to_extension函数获取图像文件的后缀。

    “`php
    $filename = $_FILES[“file”][“tmp_name”];
    $info = getimagesize($filename);
    $imageType = $info[2];
    $ext = image_type_to_extension($imageType, false);
    “`

    以上是一些常见的获取上传图片文件后缀的方法,根据具体场景和需求,可以选择适合自己的方法来实现。

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在PHP中,我们可以通过一些方法来获得上传图片的后缀。在接收到用户上传的图片文件时,我们可以通过以下操作来获取图片的后缀。

    1. 通过$_FILES全局变量获取上传的文件信息:

    在PHP中,通过$_FILES全局变量可以获取上传文件的详细信息,包括文件名、文件类型、文件大小等。我们可以通过访问$_FILES[‘file’][‘name’]来获取上传文件的原始文件名。

    2. 使用pathinfo()函数来获取文件的路径信息:

    使用pathinfo()函数可以方便地获取文件的路径信息,包括文件的目录路径、文件名以及文件的扩展名。我们可以通过调用pathinfo($_FILES[‘file’][‘name’], PATHINFO_EXTENSION)来获取上传文件的扩展名。

    3. 使用explode()函数来获取文件的后缀:

    使用explode()函数可以将字符串以指定的分隔符分割成数组,并返回这个数组。我们可以通过调用explode(‘.’, $_FILES[‘file’][‘name’])来将上传文件的文件名以点号分割成数组,再通过数组的最后一个元素来获取文件的后缀名。

    下面是一个示例代码,展示了如何获得上传图片的后缀:

    “`php
    if(isset($_FILES[‘file’])) {
    $file_name = $_FILES[‘file’][‘name’];

    // 方法1:使用pathinfo()函数
    $extension = pathinfo($file_name, PATHINFO_EXTENSION);

    // 方法2:使用explode()函数
    $file_parts = explode(‘.’, $file_name);
    $extension = end($file_parts);

    echo “上传文件的后缀为:” . $extension;
    }
    “`

    以上就是在PHP中获得上传图片后缀的方法。根据不同的需要,我们可以选择使用pathinfo()函数或者explode()函数来获取上传文件的后缀。通过这些方法,我们可以方便地对上传的图片进行后续处理。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部