如何用PHP重命名目录中文件的扩展名


How to rename extension of file in directory with PHP?

我在目录中有一个文件名字我想把这个文件重命名为name。processed

我有这样的代码:

$fn1 = str_replace(".processed", ".processing", $fn);
rename($fn1,$fn);

$fn包含完整的路径。

为什么目录中没有重命名文件?

我认为这不是重复的,因为我知道如何替换字符串的一部分,但我不知道如何替换目录

中的文件扩展名

PHP的参数顺序并不总是可预测的,您应该查阅文档。

// processing -> processed
// str_replace($search, $replace, $haystack)
$fn_new = str_replace(".processing", ".processed", $fn);
// rename($oldname, $newname)
$rename = rename($fn,$fn_new);
echo "old: $fn, fn_new: $fn_new, rename: ", $rename ? 'success' : 'failure';

http://php.net/manual/en/function.str-replace.phphttp://php.net/manual/en/function.rename.php


编辑:如果仍然不行:https://stackoverflow.com/search?q=php+rename

看起来您有str_replace的参数反向http://php.net/manual/en/function.str-replace.php

尝试$fn1 = str_replace(".processing", ".processed", $fn);