我正在尝试将文件夹从其原始路径移动到另一个文件夹。我找到了几个解决方案来做到这一点。
rename
PHP函数:rename($oldpath, $newpath);
直接来自 PHP 的 Linux 命令:
exec("mv $oldpath $newpath");
我想这两种解决方案都是一样的,但现在我问:我应该使用哪个?更重要的是:为什么?
我认为最好使用 PHP 函数来避免直接与 OS 交互,但我更喜欢更详细的意见。
我正在尝试将文件夹从其原始路径移动到另一个文件夹。我找到了几个解决方案来做到这一点。
rename
PHP函数:rename($oldpath, $newpath);
直接来自 PHP 的 Linux 命令:exec("mv $oldpath $newpath");
我想这两种解决方案都是一样的,但现在我问:我应该使用哪个?更重要的是:为什么?
我认为最好使用 PHP 函数来避免直接与 OS 交互,但我更喜欢更详细的意见。
使用 PHP 命令的 4 个理由:
mv
仅适用于 POSIX。如果您遇到在 Windows 上运行代码的需要,它将无法工作。mv
实用程序创建新进程。exec
,您需要手动转义路径。$oldpath
和$newpath
来自用户输入吗?如果$oldpath
设置为--version;
,$newpath
现在是一个独立命令,例如可以是rm / -rf
.