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 相关文章推荐
我的论坛源代码(二)
Oct 09 PHP
《PHP编程最快明白》第七讲:php图片验证码与缩略图
Nov 01 PHP
PHP数组 为文章加关键字连接 文章内容自动加链接
Dec 29 PHP
PHP生成随机用户名和密码的实现代码
Feb 27 PHP
php读取二进制流(C语言结构体struct数据文件)的深入解析
Jun 13 PHP
PHP与MYSQL中UTF8 中文排序示例代码
Oct 23 PHP
php计划任务之ignore_user_abort函数实现方法
Jan 08 PHP
PHP排序算法之快速排序(Quick Sort)及其优化算法详解
Apr 21 PHP
PHP通过GD库实现验证码功能示例
Feb 23 PHP
PHP删除数组中特定元素的两种方法
Feb 28 PHP
对laravel的session获取与存取方法详解
Oct 08 PHP
php实现的简单多进程服务器类完整示例
Feb 01 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
Cappuccino 卡布其诺咖啡之制作
2021/03/03 冲泡冲煮
php读取本地文件常用函数(fopen与file_get_contents)
2013/09/09 PHP
php7函数,声明,返回值等新特性介绍
2018/05/25 PHP
windows 2008r2+php5.6.28环境搭建详细过程
2019/06/18 PHP
Nigma vs AM BO3 第二场2.13
2021/03/10 DOTA
重载toString实现JS HashMap分析
2011/03/13 Javascript
JavaScript运行时库属性一览表
2014/03/14 Javascript
Javascript基础_嵌入图像的简单实现
2016/06/14 Javascript
很酷的星级评分系统原生JS实现
2016/08/25 Javascript
使用JavaScript解决网页图片拉伸问题(推荐)
2016/11/25 Javascript
jQuery实现三级联动效果
2017/03/02 Javascript
Ionic3 UI组件之autocomplete详解
2017/06/08 Javascript
使用ionic(选项卡栏tab) icon(图标) ionic上拉菜单(ActionSheet) 实现通讯录界面切换实例代码
2017/10/20 Javascript
解决vue打包之后静态资源图片失效的问题
2018/02/21 Javascript
微信小程序中添加客服按钮contact-button功能
2018/04/27 Javascript
js运算符的一些特殊用法
2018/07/29 Javascript
如何使用electron-builder及electron-updater给项目配置自动更新
2018/12/24 Javascript
Nodejs处理异常操作示例
2018/12/25 NodeJs
使用 UniApp 实现小程序的微信登录功能
2020/06/09 Javascript
python pip源配置,pip配置文件存放位置的方法
2019/07/12 Python
python爬虫 基于requests模块发起ajax的get请求实现解析
2019/08/20 Python
Python操作Excel工作簿的示例代码(\*.xlsx)
2020/03/23 Python
python 字符串的驻留机制及优缺点
2020/06/19 Python
Python分析最近大火的网剧《隐秘的角落》
2020/07/02 Python
Python生成器传参数及返回值原理解析
2020/07/22 Python
css3类选择器之结合元素选择器和多类选择器用法
2017/03/09 HTML / CSS
Bergfreunde丹麦:登山装备网上零售商
2017/02/26 全球购物
法人代表证明书格式
2014/10/01 职场文书
计划生育责任书
2015/05/09 职场文书
我的暑假生活作文(五年级)范文
2019/08/07 职场文书
2019年度政务公开考核工作总结模板
2019/11/11 职场文书
MySQL infobright的安装步骤
2021/04/07 MySQL
python数据可视化使用pyfinance分析证券收益示例详解
2021/11/20 Python
python实现会员信息管理系统(List)
2022/03/18 Python
Netty分布式客户端处理接入事件handle源码解析
2022/03/25 Java/Android
python如何利用cv2.rectangle()绘制矩形框
2022/12/24 Python