PHP获取文件扩展名的常用方法小结「五种方式」

1. 使用pathinfo函数

PHP提供了pathinfo函数来获取文件的路径信息,其中包括文件名、扩展名等。

$filename = 'example.jpg';

$extension = pathinfo($filename, PATHINFO_EXTENSION);

echo "文件扩展名是:{$extension}";

在上述代码中,我们使用pathinfo函数获取了文件的扩展名,并通过echo语句将其输出。

2. 使用explode函数和end函数

我们可以使用explode函数将文件名按照点(.)进行分割,然后使用end函数获取最后一个元素即为文件扩展名。

$filename = 'example.jpg';

$parts = explode('.', $filename);

$extension = end($parts);

echo "文件扩展名是:{$extension}";

在上述代码中,我们首先使用explode函数将文件名分割成一个数组,然后使用end函数获取数组中的最后一个元素,即为文件扩展名。

3. 使用substr函数和strrpos函数

我们可以使用substr函数和strrpos函数来截取文件名中最后一个点(.)之后的部分,即为文件扩展名。

$filename = 'example.jpg';

$extension = substr($filename, strrpos($filename, '.') + 1);

echo "文件扩展名是:{$extension}";

在上述代码中,我们使用strrpos函数获取文件名中最后一个点(.)的位置,然后使用substr函数截取该位置之后的部分即为文件扩展名。

4. 使用preg_match函数和正则表达式

我们可以使用preg_match函数结合正则表达式来匹配文件名中最后一个点(.)之后的部分,即为文件扩展名。

$filename = 'example.jpg';

preg_match('/[^.]+$/', $filename, $matches);

$extension = $matches[0];

echo "文件扩展名是:{$extension}";

在上述代码中,我们使用正则表达式'[^.]+$'匹配文件名中最后一个点(.)之后的部分,然后使用preg_match函数将匹配结果存储在$matches数组中,最后通过$matches[0]获取文件扩展名。

5. 使用pathinfo函数和strtolower函数

如果我们需要将文件扩展名统一转换为小写,可以使用pathinfo函数获取文件扩展名后,再使用strtolower函数将其转换为小写。

$filename = 'example.JPG';

$extension = strtolower(pathinfo($filename, PATHINFO_EXTENSION));

echo "文件扩展名是:{$extension}";

在上述代码中,我们首先使用pathinfo函数获取文件扩展名,然后使用strtolower函数将其转换为小写。

通过以上五种常用方法,我们可以方便地获取文件的扩展名。根据实际需求选择合适的方法可以使代码更加简洁高效。

后端开发标签