php中取得文件的后缀名?

yipeiwu_com7年前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)

一直都在网上抄别人写的电话,邮箱正则表达式,今天稍微有点闲情,把一直想自己写个这样的表达式的心愿给完成:复制代码 代码如下:/** * 邮箱地址正则表达式 */$pr...

PHP SQLite类

复制代码 代码如下:<? /** * SQLite类 * 2009-5-6 * 连万春 * */ class SQLite {     //...

PHP下通过系统信号量加锁方式获取递增序列ID

在网上搜了搜,有两个办法但都不太好:一个是简单的以进程ID+时间戳,或进程ID+随机数来产生近似的唯一ID,虽简单但对于追求“完美”的我不愿这样凑合,再说Apache2以后进程会维持相当...

php全局变量和类配合使用深刻理解

情况1: father.php如下定义: 复制代码 代码如下: <?php $jack = 1000; ?> children.php 如下定义: <?php requ...

PHP判断数据库中的记录是否存在的方法

本文实例讲述了PHP判断数据库中的记录是否存在的方法。分享给大家供大家参考。 具体实现代码如下: 复制代码 代码如下: <?php    $sql=...