0
該腳本的用途是更改電子商務網站目錄中圖像列表的名稱。因此,特別是當腳本是rand時,用戶將鍵入一個單詞或短語,他們希望將一組文件或一組文件作爲前綴。該腳本將遍歷每個文件,更改前綴並追加從零開始的下一個可用編號。更改目錄中圖像的名稱並顯示更改後的文件名
我想在頁面上向用戶顯示/渲染哪些文件已被更改。此時腳本運行時會顯示目錄中的當前文件,然後列出目錄中已更改的文件及其名稱。
我怎樣才能得到文件列表只顯示腳本完成處理新名稱時顯示?
爲什麼腳本沒有在文件名後附加適當的增量數?它重命名文件的順序如下: abc0.jpg abc1.jpg abc10.jpg abc11.jpg abc12.jpg abc13.jpg
<?php
$display_file_list;
//Allow user to put choose name
if (isset($_POST['file_prefix'])){
$the_user_prefix = $_POST['file_prefix'];
//open the current directory change this to modify where you are looking
$dir = opendir('.');
$i=0;
//Loop though all the files in the directory
while(false !==($file = readdir($dir)))
{
//This is the way we would like the page to function
//if the extention is .jpg
if(strtolower(pathinfo($file, PATHINFO_EXTENSION)) =='jpg')
{
//Put the JPG files in an array to display to the user
$display_file_list[]= $file;
//Do the rename based on the current iteration
$newName = $the_user_prefix.$i . '.jpg';
rename($file, $newName);
//increase for the next loop
$i++;
}
}
//close the directory handle
closedir($dir);
}else{
echo "No file prefix provided";
}
?>
<html>
<body>
<form action="<?=$_SERVER['PHP_SELF']?>" method="POST">
<input type="text" name="file_prefix"><br>
<input type="submit" value="submit" name="submitMe">
</form>
</body>
</html>
<?php
foreach ($display_file_list as $key => $value) {
echo $value. "<br>";
}
?>