php - 删除图像扩展名,重命名并还原

标签 php string filenames

假设图片被称为:gecko.jpg
我可以先删除“.jpg”并在“gecko”之后添加“-100x100”,然后再将扩展名放回原位,这样它就是“gecko-100x100.jpg”吗?

最佳答案

是的,非常简单地将PHP的字符串函数与 basename() 结合使用

$base = basename($filename, ".jpg");
echo $base . "-100x100" . ".jpg";

或者使用 strrpos() 通过查找最后一个.对任何文件类型进行扩展名定位
// Use strrpos() & substr() to get the file extension
$ext = substr($filename, strrpos($filename, "."));
// Then stitch it together with the new string and file's basename
$newfilename = basename($filename, $ext) . "-100x100" . $ext;

-
// Some examples in action...
$filename = "somefile.jpg";
$ext = substr($filename, strrpos($filename, "."));
$newfilename = basename($filename, $ext) . "-100x100" . $ext;
echo $newfilename;
// outputs somefile-100x100.jpg

// Same thing with a .gif
$filename = "somefile.gif";
// outputs somefile-100x100.gif

关于php - 删除图像扩展名,重命名并还原,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8378214/

相关文章:

javascript - 通过ajax将PHP对象返回给javascript

python - 在 python 中将文件附加到电子邮件会导致文件名空白?

linux - 什么字符保证不在文件名中(Unix/Ubuntu)

ruby-on-rails - S3 上的 Rails + ActiveStorage : Set filename on download?

javascript - 在 3 位数字 block 中格式化字符串

python - 如何在 Python 中部分拆分并获取字符串的第一部分?

php - 用变量替换占位符的有效方法

php - 如何在 cakephp 3.x 中执行自定义查询

php - htaccess 强制 https 并在没有子域的情况下将非 www 重定向到 www

c# - 从完全限定的方法名称中拆分参数