PHP中拆分(';sunset.jpg';)的替代方案将如何显示输出?

PHP中拆分(';sunset.jpg';)的替代方案将如何显示输出?,php,Php,请帮助我找到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()函数已被弃用,我们必须改用

请帮助我找到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’。
帮助查找结果。

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

$file_name = "sunset.jpg";
if( isset( $file_name ) ) {
    echo $exts = end( explode( '.', $file_name ) );
} else {
    echo "error";
}
试试这个

$exts = pathinfo($file_name, PATHINFO_EXTENSION);

请参阅

上的文档,这很简单。使用网站或谷歌中的搜索框。两者都会告诉你答案。认真地他们会的。我想知道witch one的工作速度更快,这还是爆炸?不确定,但pathinfo更准确,因为它可以处理多种不同的文件名,包括是否有sunset.jpg?someVar=value等。在这种情况下,它仍然应该返回jpg