经过数小时的在线阅读并实施了不同的代码,我得出了以下结论。
我有一个文件夹名称 111646 ,在该文件夹中,文件名类似于 1-foto-000.jpg?20160331103045
我要做的是将文件名重命名为 1-foto-000.jpg
我正在使用以下代码。
<?php
$files = scandir('111646/');
foreach($files as $file) {
$newname = explode("?", $file);
rename($file, $newname[0]);
}
?>
运行上面的代码时,它给我错误
Warning: rename(1-foto-000.jpg?20160331103045,1-foto-000.jpg): No such file or directory in /Applications/XAMPP/xamppfiles/htdocs/sunuti/index.php on line 17
代码正在尝试重命名文件,但显示错误的错误目录路径。
我认为这是一个很小的错误,但我找不到它...
我们将不胜感激
谢谢
答案 0 :(得分:0)
rename()在您的文件夹中执行,您需要指定您希望它在子文件夹中运行。 试试:
<?php
$folder = '111646/'
$files = scandir($folder);
foreach($files as $file) {
$newname = explode("?", $file);
rename($folder.$file, $folder.$newname[0]);
}
?>