php获取文件后缀扩展名三种方法分享

本文中,我们介绍三种php获取文件扩展名的方法

方法一:使用PHP pathinfo()获取文件扩展名

方法二:使用PHP SplFileInfo类获取文件后缀

方法三:使用PHP substr()和strrchr()函数获取文件扩展名

pathinfo()获取方法

pathinfo() 函数以数组的形式返回关于文件路径的信息。

返回的数组:

1

2

3

4

[dirname]: 目录路径

[basename]: 文件名

[extension]: 文件后缀名

[filename]: 不包含后缀的文件名

语法:

1

pathinfo(path,options)

参数描述:

1

2

path 必需。规定要检查的路径。

options 可选。规定要返回的数组元素。默认是 all。

可能的值:

1

2

3

4

PATHINFO_DIRNAME - 只返回 dirname

PATHINFO_BASENAME - 只返回 basename

PATHINFO_EXTENSION - 只返回 extension

PATHINFO_FILENAME - 只返回 filename

我们可以使用pathinfo()函数从字符串获取文件扩展名。

例子:

1

2

3

4

5

6

7

8

9

10

$file 'folder/directory/file.html';

$ext pathinfo($file, PATHINFO_EXTENSION);

// Returns html

echo $ext;

$file 'folder/directory/file.html';

$ext pathinfo($file);

echo $ext['dirname'] . '<br/>';   // Returns folder/directory

echo $ext['basename'] . '<br/>';  // Returns file.html

echo $ext['extension'] . '<br/>'// Returns .html

echo $ext['filename'] . '<br/>';  // Returns file

SplFileInfo获取方法

SplFileInfo类为单个文件的信息提供了一个高级的面向对象的接口。

我们可以使用SplFileInfo :: getExtension()函数提取文件扩展名。

SplFileInfo :: getExtension()函数是PHP中标准PHP库(SPL)的内置函数,用于获取文件扩展名。

语法:

1

string SplFileInfo::getExtension( void )

该函数不接受任何参数。该函数返回包含文件扩展名的字符串。

下面的示例说明了如何使用SplFileInfo类获取文件扩展名。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<?php 

$GFG array

"/home/rajvir/Desktop/GeeksforGeeks/dummy.php"

"/home/rajvir/Desktop/gfg.txt"

"/var/www/html/gfg.php"

"demo.c"

); 

foreach ($GFG as &$file_name) { 

// Create new SPlFileInfo Object 

$file new SplFileInfo($file_name); 

// Print result 

echo $file->getExtension() . "</br>"

?>

输出:

1

2

3

4

php

txt

php

c

substr()和strrchr()函数获取方法

substr() 函数返回字符串的一部分。

strrchr() 函数查找字符串在另一个字符串中最后一次出现的位置,并返回从该位置到字符串结尾的所有字符。

结合这两个函数的功能,我们可以写一个php自定义函数获取文件扩展名。

1

2

3

function get_file_extension($file_name) {

return substr(strrchr($file_name,'.'),1);

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

执刀人的工具库

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值