【发布时间】:2020-06-22 08:41:20
【问题描述】:
我每天在我的服务器上接收一个 csv。 我正在尝试删除旧文件并重命名新文件。
unlink("old.csv");
新的 csv 每天都有一个新的文件名。 3 月 7 日,该文件被称为
new20200307.csv 3 月 8 日
new20200308.csv等等
如何将新文件重命名为old.csv?使用该代码将我的旧文件重命名为new20200308new.csv
<?php
$directory = '/cronjob/smart/';
foreach (glob($directory."*.csv") as $filename) {
$file = realpath($filename);
rename($file, str_replace(".csv","new.csv",$file));
}
?>
【问题讨论】:
-
rename($file, 'old.csv');? -
如果你希望文件名是“old.csv”,为什么不在
rename()的调用中使用它,比如rename($file, $directory."old.csv");? -
这里重命名的确切问题是什么?也许您想检查
str_replace生成的文件名是否是您期望的名称? -
抱歉造成误解 - 每天都会推送一个新的 csv。我想删除昨天的 csv,然后将今天的文件重命名为 old.csv。
-
“类似 old.csv”或完全“old.csv”?你需要在这里准确。另外,我认为我们中的任何人都没有误解您所说 的内容,尽管它可能仍然不是您真正的意思。如果您始终将新文件另存为“old.csv”,那么它将始终是您要删除的文件的名称,因此无需搜索整个目录。
标签: php rename file-rename