如何在 PHP 中获取文件扩展名

Minahil Noor 2023年1月30日 2020年10月15日
  1. 在 PHP 中使用 pathinfo() 函数获取文件扩展名
  2. 在 PHP 中使用 SplFileInfo() 构造和 getExtension() 函数来获取文件扩展名
如何在 PHP 中获取文件扩展名

在本文中,我们将介绍在 PHP 中获取文件扩展名的方法。

  • 使用 pathinfo() 函数
  • 使用 SplFileInfo'结构和 getExtension’函数

在 PHP 中使用 pathinfo() 函数获取文件扩展名

我们将使用内置函数 pathinfo() 来获取文件扩展名。这个函数从给定的路径中提取路径信息。使用该函数的正确语法如下。

pathinfo($pathName, $options);

内置函数 pathinfo() 有两个参数。其详细参数如下

参数 说明
$pathName 强制 它是包含文件名和扩展名的路径的字符串,我们将从这个字符串中提取路径信息。我们将从这个字符串中提取路径信息。
$options 可选 这个参数指定了路径元素。例如,如果我们只想找到一个文件名,我们可以传递 PATHINFO_FILENAME 作为一个选项,其他选项有 PATHINFO_DIRNAMEPATHINFO_BASENAMEPATHINFO_EXTENSION。其他选项有 PATHINFO_DIRNAMEPATHINFO_BASENAMEPATHINFO_EXTENSION

该函数返回一个包含目录名、基本名、扩展名和文件名的关联数组。如果传递了 $option 参数,则返回一个字符串。

下面的程序显示了我们能否使用 pathinfo() 函数来获取文件扩展名。

<?php 
$path = "E:\work\CM\myppt.ppt";
$extension = pathinfo($path, PATHINFO_EXTENSION);
echo("The extension is $extension.");  
?> 

我们已经传递了 $option 参数。函数返回了一个包含文件扩展名的字符串。

输出:

The extension is ppt. 

如果我们不传递 $option 参数,函数将返回一个关联的数组。

<?php 
$path = "E:\work\CM\myppt.ppt";
$array = pathinfo($path);
echo("The associative array is: \n");  
var_dump($array);
?> 

输出:

The associative array is: 
array(4) {
  ["dirname"]=>
  string(1) "."
  ["basename"]=>
  string(20) "E:\work\CM\myppt.ppt"
  ["extension"]=>
  string(3) "ppt"
  ["filename"]=>
  string(16) "E:\work\CM\myppt"
}

在 PHP 中使用 SplFileInfo() 构造和 getExtension() 函数来获取文件扩展名

在 PHP 中,我们也可以使用 SplFileInfo() 构造来获取文件的扩展名。这个构造将创建一个新的 SplFileInfo 对象。之后,我们可以使用 getExtension() 函数来获取文件扩展名。使用这个构造的正确语法如下。

$variableName = new SplFileInfo($pathName);

SplFileInfo() 接受一个参数。它的详细参数如下

参数 说明
$pathName 强制 它是包含我们文件路径的字符串。我们将使用这个字符串来提取文件的扩展名。

我们将使用 getExtension() 函数来获取文件的扩展名。使用这个函数的正确语法如下。

getExtension(void);

这个函数不接受任何参数。它返回的是文件扩展名。

获取文件扩展名的程序如下。

<?php 
$path = "E:\work\CM\myppt.ppt";
$file = new SplFileInfo($path);
$extension  = $file->getExtension();
echo("The extension is: $extension.");  
?> 

输出:

The extension is: ppt. 

相关文章 - PHP File