-2

请帮我在 5.3.5 及以上版本中找到以下 php 代码的答案。

$file_name ="sunset.jpg";
if(isset($file_name))
{
    $exts = split("[/\\.]", $file_name) ;
    $n = count($exts)-1;
    echo $n;
    $exts = $exts[$n];
    echo $exts;
}
else
{
    echo "error";
}

我知道 split() 函数已被弃用,我们必须使用 preg_split (或) explode 来代替。但我的问题是我应该如何修改我的代码以仅将输出作为“jpg”。当我尝试使用explode 和preg_split 时,我得到的结果是'sunset.jpg'。帮助查找结果。

4

2 回答 2

3

试试这个

$exts = pathinfo($file_name, PATHINFO_EXTENSION);

请参阅http://php.net/manual/en/function.pathinfo.php上的文档

于 2013-02-18T14:56:12.797 回答
1

只需分解字符串并使用它的最后一个元素:

$file_name = "sunset.jpg";
if( isset( $file_name ) ) {
    echo $exts = end( explode( '.', $file_name ) );
} else {
    echo "error";
}
于 2013-02-18T14:54:44.157 回答