Andy's Blog » php 获取文件扩展名, php 获取文件后缀, php 扩展名, php获取文件扩展名, php获取文件后缀名, php 取文件扩展名, php 获取扩展名, php获取文件后缀, php 文件扩展名, php 获取文件后缀名 » PHP 获取文件扩展名的正确方法

PHP 获取文件扩展名的正确方法

直接给最终正确答案

echo pathinfo('/www/htdocs/your_image.jpg', PATHINFO_EXTENSION);

错误写法:
你可能会这样写

function get_file_extension($file_name) {
    
return substr(strrchr($file_name,'.'),1);
}

或这样写

function file_extension($filename) {
    
return end(explode(".", $filename));
}

顺便看下pathinfo 干些什么

<?php
$file_path = pathinfo('/www/htdocs/your_image.jpg');
 
echo "$file_path ['dirname']\n";
echo "$file_path ['basename']\n";
echo "$file_path ['extension']\n";
echo "$file_path ['filename']\n"; // only in PHP 5.2+
?>

以上将输出

/www/htdocs
your_image.jpg
jpg
your_image

注意: pathinfo 支持第3个参数
* PATHINFO_DIRNAME - 目录
* PATHINFO_BASENAME - 文件名(含扩展名)
* PATHINFO_EXTENSION - 扩展名
* PATHINFO_FILENAME - 文件名(不含扩展名)

Incoming search terms:

Tags: PHP, Extension, 扩展名

本文地址: http://www.21andy.com/new/20100309/1758.html

5 评论 to “PHP开源CMS之MODx”

  1. cevin 于 2010-03-14 16:47:56 发表:

    为了程序的向下兼容。php4.0.3早期版本没有pathinfo函数

    fvzone 于 2010-03-22 15:57:20 回复:

    你的是什么机器啊,还php4。。。

  2. kevin 于 2011-01-27 13:02:58 发表:

    为什么说那是错误的写法?最多只能算效率没那么高的写法
    是不是有什么其它弊端?

    jjk 于 2011-09-08 20:55:42 回复:

    /www/music/kevin.jpeg.mp3 -> jpeg.mp3

  3. 。。。。 于 2012-06-19 15:11:24 发表:

    大哥,那
    function file_extension($filename) {
    return end(explode(".", $filename));
    }这个呢。
    我怎么怎么看怎么正确,而且觉得比你说的正确答案还简便优雅呢