php 怎么取文件后缀名
时间 : 2023-03-24 22:04:02声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性
在 PHP 中,我们可以使用 pathinfo 函数获取一个文件的后缀名,或者使用 explode 函数手动分离文件名和文件后缀。下面是两种方法的具体实现。
使用 pathinfo 函数获取文件后缀名
pathinfo 函数可以返回一个关联数组,其中包含有关路径中的信息。我们可以使用该函数来获取文件的后缀名。
示例代码如下:
```php
$filename = 'example.jpg';
$extension = pathinfo($filename, PATHINFO_EXTENSION);
echo $extension; // 输出:jpg
在上述示例代码中,我们将 $filename 变量指定为文件名,然后使用 pathinfo 函数来提取其文件后缀名。该函数的第二个参数 PATHINFO_EXTENSION 告诉它只返回文件的扩展名。
如果在获取后缀名之前需要检查文件名是否存在,可以使用文件函数 is_file:
```php
$filename = 'example.jpg';
if (is_file($filename)) { // 检查文件是否存在
$extension = pathinfo($filename, PATHINFO_EXTENSION);
echo $extension; // 输出:jpg
}
使用 explode 函数手动分离文件名和文件后缀
我们还可以使用 explode 函数将文件名分成数组,然后从数组中获取最后一个元素,即文件后缀名。
示例代码如下:
```php
$filename = 'example.jpg';
$parts = explode('.', $filename);
$extension = end($parts);
echo $extension; // 输出:jpg
在上述示例代码中,我们使用 explode 函数将字符串 $filename 分成数组,并以点号作为分隔符。然后使用 end 函数返回数组中的最后一个元素。
如果在使用 explode 函数之前需要检查文件名是否存在,可以使用文件函数 is_file:
```php
$filename = 'example.jpg';
if (is_file($filename)) { // 检查文件是否存在
$parts = explode('.', $filename);
$extension = end($parts);
echo $extension; // 输出:jpg
}
无论使用哪种方法,都可以轻松地获取 PHP 中文件的后缀名。
在 PHP 中获取文件的后缀名可以使用 pathinfo() 和 strtolower() 函数。
pathinfo() 函数可以返回路径的信息,它可以返回路径的目录部分、文件名部分和文件扩展名部分。
strtolower() 函数可以将字符串转换成小写字母,这样就可以忽略文件名中的大小写字母。
下面是一个示例代码,可以获取文件的后缀名:
<?php
$file = "example.txt";
$extension = strtolower(pathinfo($file, PATHINFO_EXTENSION));
echo $extension; // 输出 txt
?>
在上面的代码中,$file 变量存储了文件名,pathinfo() 函数返回了文件扩展名部分,strtolower() 函数将其转换成小写字母,最终输出文件的后缀名。
需要注意的是,如果文件没有扩展名,那么 pathinfo() 函数的返回值将是空字符串。因此在取文件后缀名的时候,应该先使用 isset() 函数或者 empty() 函数来判断文件是否有扩展名。
下面是一个完整的示例代码,可以获取文件后缀名并判断是否为图片类型:
<?php
$file = "example.png";
$extension = strtolower(pathinfo($file, PATHINFO_EXTENSION));
if(isset($extension) && in_array($extension, array("jpeg","jpg","png","gif"))) {
echo "这是一张图片。";
} else {
echo "这不是一张图片。";
}
?>
在上面的代码中,使用 in_array() 函数来判断文件是否为图片类型。具体来说,如果文件的后缀名是 jpeg、jpg、png 或 gif,则认为它是一张图片。
上一篇
php微信红包怎么运行呢
下一篇
php怎么在后台修改图片
https/SSL证书广告优选IDC>>
推荐主题模板更多>>
推荐文章