Ton*_*aro 43
在现代操作系统中,文件名很可能包含文件扩展名之前的句号,例如:
my.file.name.jpg
Run Code Online (Sandbox Code Playgroud)
PHP提供了一种方法来查找没有考虑到这一点的扩展名的文件名,然后只需添加新的扩展名:
function replace_extension($filename, $new_extension) {
$info = pathinfo($filename);
return $info['filename'] . '.' . $new_extension;
}
Run Code Online (Sandbox Code Playgroud)
Mat*_*tt 21
substr_replace($file , 'png', strrpos($file , '.') +1)
Run Code Online (Sandbox Code Playgroud)
会将任何扩展名更改为您想要的内容.将png替换为您想要的扩展名.
Ale*_*lex 10
function replace_extension($filename, $new_extension) {
$info = pathinfo($filename);
return ($info['dirname'] ? $info['dirname'] . DIRECTORY_SEPARATOR : '')
. $info['filename']
. '.'
. $new_extension;
}
Run Code Online (Sandbox Code Playgroud)
在字符串中包含文件名后,首先使用正则表达式将扩展名替换为您选择的扩展名.这是一个小功能,它会做到这一点:
function replace_extension($filename, $new_extension) {
return preg_replace('/\..+$/', '.' . $new_extension, $filename);
}
Run Code Online (Sandbox Code Playgroud)
然后使用rename()函数使用新文件名重命名该文件.