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


Posted in PHP onApril 27, 2018

本文实例总结了PHP获取文件扩展名的常用方法。分享给大家供大家参考,具体如下:

这是我应聘实习时遇到的一道笔试题:

使用五种以上方式获取一个文件的扩展名。

要求:dir/upload.image.jpg,找出 .jpg 或者 jpg ,

必须使用PHP自带的处理函数进行处理,方法不能明显重复,可以封装成函数,比如 get_ext1($file_name), get_ext2($file_name)

下面是我参考网上资料总结出来的五种方法,都比较简单,话不多说,直接上代码:

方法1:

function getExt1($filename)
{
   $arr = explode('.',$filename);
   return array_pop($arr);;
}

方法2:

function getExt2($filename)
{
   $ext = strrchr($filename,'.');
   return $ext;
}

方法3:

function getExt3($filename)
{
   $pos = strrpos($filename, '.');
   $ext = substr($filename, $pos);
   return $ext;
}

方法4:

function getExt4($filename)
{
   $arr = pathinfo($filename);
   $ext = $arr['extension'];
   return $ext;
}

方法5:

function getExt5($filename)
{
   $str = strrev($filename);
   return strrev(strchr($str,'.',true));
}

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php discuz 主题表和回帖表的设计
Mar 13 PHP
PHP array_multisort() 函数的深入解析
Jun 20 PHP
PHP中的output_buffering详细介绍
Sep 27 PHP
php检测数组长度函数sizeof与count用法
Nov 17 PHP
PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
Jan 07 PHP
PHP数据库操作Helper类完整实例
May 11 PHP
PHP中overload与override的区别
Feb 13 PHP
PHP中单例模式与工厂模式详解
Feb 17 PHP
php中Redis的应用--消息传递
Mar 28 PHP
浅谈PHP表单提交(POST&GET&URL编/解码)
Apr 03 PHP
php类自动装载、链式操作、魔术方法实现代码
Jul 23 PHP
深入理解Yii2.0乐观锁与悲观锁的原理与使用
Jul 26 PHP
PHP四种排序算法实现及效率分析【冒泡排序,插入排序,选择排序和快速排序】
Apr 27 #PHP
php-fpm服务启动脚本的方法
Apr 27 #PHP
php-fpm添加service服务的例子
Apr 27 #PHP
laravel 5.4 + vue + vux + element的环境搭配过程介绍
Apr 26 #PHP
PHP分享图片的生成方法
Apr 25 #PHP
PHP receiveMail实现收邮件功能
Apr 25 #PHP
laravel中短信发送验证码的实现方法
Apr 25 #PHP
You might like
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
2012/06/17 PHP
WordPress中制作导航菜单的PHP核心方法讲解
2015/12/11 PHP
PHP简单实现图片格式转换(jpg转png,gif转png等)
2019/10/30 PHP
“不能执行已释放的Script代码”错误的原因及解决办法
2007/09/09 Javascript
浅析webapp框架AngularUI的demo
2014/12/21 Javascript
Node.js node-schedule定时任务隔多少分钟执行一次的方法
2015/02/10 Javascript
jQuery实现锚点scoll效果实例分析
2015/03/10 Javascript
JavaScript清空数组元素的两种方法简单比较
2015/07/10 Javascript
javascript常用函数(2)
2015/11/05 Javascript
jquery插件jquery.confirm弹出确认消息
2015/12/22 Javascript
js调用webservice构造SOAP进行身份验证
2016/04/27 Javascript
Knockoutjs 学习系列(二)花式捆绑
2016/06/07 Javascript
在vue中实现简单页面逆传值的方法
2017/11/27 Javascript
js实现简单的倒计时
2021/01/28 Javascript
[01:04:20]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第一场 11.29
2020/12/02 DOTA
[39:18]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第二场 12.17
2020/12/19 DOTA
Python实现的百度站长自动URL提交小工具
2014/06/27 Python
python实现从字符串中找出字符1的位置以及个数的方法
2014/08/25 Python
用Python计算三角函数之atan()方法的使用
2015/05/15 Python
详解Python中的序列化与反序列化的使用
2015/06/30 Python
Python使用Beautiful Soup包编写爬虫时的一些关键点
2016/01/20 Python
python实现kMeans算法
2017/12/21 Python
对pandas中to_dict的用法详解
2018/06/05 Python
详解Python 多线程 Timer定时器/延迟执行、Event事件
2019/06/27 Python
pytorch 实现在预训练模型的 input上增减通道
2020/01/06 Python
win10下opencv-python特定版本手动安装与pip自动安装教程
2020/03/05 Python
10个python3常用排序算法详细说明与实例(快速排序,冒泡排序,桶排序,基数排序,堆排序,希尔排序,归并排序,计数排序)
2020/03/17 Python
Django中FilePathField字段的用法
2020/05/21 Python
教师岗位职责范本
2013/12/29 职场文书
优秀员工表扬信
2014/01/17 职场文书
2014年最新学习全国两会精神心得
2014/03/17 职场文书
本科毕业生求职自荐信
2014/04/09 职场文书
师德师风个人整改措施
2014/10/27 职场文书
2014年接待工作总结
2014/11/26 职场文书
《刷子李》教学反思
2016/02/20 职场文书
Nginx的基本概念和原理
2022/03/21 Servers