我正在尝试制作一个PHP脚本来更改某些项目的精选图片。 一般原则是,当设置$ _POST ['特色']时,它会将该图片重命名为featured.jpg并将所有其他图片重命名为其hash_file值。然而,当没有特色图片集时,它首次正常工作,但是当我尝试将其从一个特色图片更改为另一个特色图片时,之前的特色图片被删除,而新的图片不会被重命名为特色图片。 JPG。所有图片都在同一个文件夹中。
以下是相关代码:
if (isset($_POST['featured'])) {
$id = $_POST['id'];
$slike = glob('../img/uploads/'.$id.'/*.{jpg,png}', GLOB_BRACE);
if ($slike != null) {
foreach ($slike as $slika) {
$path = realpath($slika);
$name = basename($path);
if($name == basename($_POST['featured'])){
if(!file_exists(dirname($path) . '/featured.jpg')){
rename($path, dirname($path) . '/featured.jpg');
}else{
rename(dirname($path) . '/featured.jpg', dirname($path) . '/' . hash_file('md5', $path) . '.jpg');
rename($path, dirname($path) . '/featured.jpg');
}
}else{
rename ($path, dirname($path) . '/' . hash_file('md5', $path) . '.jpg');
}
}
}
}