我的代码
<?php
$video_thumb_large = 'some.example-file.name.png'; /** define a file name here **/
/** The line below is giving me what I need **/
$video_thumb_extension_large = substr($video_thumb_large, strrpos($video_thumb_large, '.') + 1);
echo $video_thumb_extension_large; /** Output: png **/
?>
还有其他方法可以获取文件扩展名,例如this Stack Overflow问题有一些答案,但答案中没有我的代码。
我想知道为什么我的代码好或者为什么或为什么不在生产网站上使用我的代码。在这种情况下做什么更好?我也可以在点上使用explode()
并使用array()
中的最后一部分,但它更好吗?
什么是更好或最好的文件扩展名没有点(。)?
答案 0 :(得分:0)
根据我自己的经验推荐,比Basename更快,爆炸或使用你自己的Func。
尝试在所有Opcaches中使用默认PHP功能Cachable ..
重新编码只需替换旧代码并执行
<?php
//Recoded by Ajmal PraveeN
$video_thumb_large = 'some.example-file.name.png'; /** define a file name here **/
$path_parts = pathinfo($video_thumb_large);
//out the file name and file extension without dot
echo 'File Name :'; echo $path_parts['filename']; echo '<br>';
echo 'File Extension :'; echo $path_parts['extension']; echo '<br>';
?>
答案 1 :(得分:0)
我认为你可以做到这一点的最好方法就是提取扩展名,然后从开头删除句点,如下所示:
<?php
function get_file_extension($file_name) {
return substr(strrchr($file_name,'.'),1);
}
$video_thumb_large = 'some.example-file.name.png'; /** define a file name here **/
/** The line below is giving me what I need **/
$video_thumb_extension_large = get_file_extension($video_thumb_large);
echo $video_thumb_extension_large; /** Output: png **/
?>