php中取得文件的后缀名?

yipeiwu_com6年前PHP代码库
第一类方法是利用数组完成的。先把文件名切割成数组,然后想办法取得数组最后一个元素就OK了。第二类方法是通过字符串的处理来完成,还有一种方法是用pathinfo()函数。
复制代码 代码如下:

$pic = 'abc.3434.342.12123.123.exe';
$pics = explode('.' , $pic);

/*得到数组总数,然后取最后一个*/
echo $num = count($pics);
echo '<br>'.$pics[$num-1];

/*遍历数组,取得最后一个元素*/
foreach ($pics as $value) //2
{
$a = $value;
}
echo $a.'<br>';
/*直接输出数组最后一个元素*/
echo end($pics);
echo '<br>';
/*单出数组最后一个元素,注意和end()的区别*/
//echo array_pop($pics);
/*先按照键值倒序排列这个数组,然后单出第一个元素*/
krsort($pics);
echo array_shift($pics);
echo '<br>';

/*pathinfo()函数返回值的extension索引对应的值*/
$res = pathinfo($pic); //5
var_dump($res);
echo $res['extension'].'<br>';

/*字符串截取,取最后三位即可*/
echo substr($pic , -3 , 3);

大家可以看到一个问题有N多种解决办法,在做程序的时候同样如此,解决方法总是有的,对于一些新手,一定要坚持,这样才能把PHP学习好!

相关文章

PHP file_exists问题杂谈

PHP file_exists问题杂谈

问题   公司有个框架是基于smarty写的,我负责php的升级,维护人员把新环境布上来之后,测试人员找我提出经常报错(错误:提示找不到文件的)。   我追踪了一下代码,原来是smart...

php封装db类连接sqlite3数据库的方法实例

前言 SQLite3扩展名在PHP 5.3.0+以上都会默认启用。可以在编译时使用--without-sqlite3来禁用它。 Windows用户可通过启用php_sqlite3.dll...

php后门URL的防范

例如,下面WEB应用可能向登入用户显示敏感信息:复制代码 代码如下:<?php$authenticated = FALSE;$authenticated = check_auth(...

php 过滤器实现代码

在以前,一个用户通过网络主要是获取信息。而如今的网络刚更注重与用户的交互,用户不再仅仅是网站的浏览者,也是网站内容的制造者。由以前单纯的“读”向“写”以及“共同创作”发展,由被动接收信息...

php5.4以下版本json不支持不转义内容中文的解决方法

本文实例讲述了php5.4以下版本json不支持不转义内容中文的解决方法。分享给大家供大家参考。具体分析如下: 写ERP接口的时候遇到JAVA方接收这种json_encode后的内容 复...