🔎

PHP скрипт, який перейменує всі файли images.jpg на image.jpg у всіх директоріях

Добрий день. Мені потрібно перейменувати всі файли images.jpg на image.jpg у директорії (разом з піддиректоріями) на PHP. Допоможіть, будь ласка!
php
1 відповідь
  • Олег
    Ось PHP-скрипт, який рекурсивно проходить по всіх директоріях, починаючи з поточної, і перейменовує всі файли images.jpg у image.jpg:
    <?php
    function renameImages($dir) {
    // Список всіх файлів і директорій у поточній директорії
    $items = scandir($dir);
    // Перебираємо файли і директорії
    foreach ($items as $item) {
    if ($item === '.' || $item === '..') continue;
    $path = $dir.DIRECTORY_SEPARATOR.$item;
    // Якщо це директорія — рекурсивно обробляємо
    if (is_dir($path)) {
    renameImages($path);
    }
    // Якщо файл називається images.jpg — перейменовуємо
    if (is_file($path) && basename($path) === 'images.jpg') {
    $newPath = $dir.DIRECTORY_SEPARATOR.'image.jpg';
    if (rename($path, $newPath)) {
    echo 'Файл '.$path.' перейменовано на '.$newPath.' <br />';
    } else {
    echo 'Помилка перейменування:'.$path.'<br />';
    }
    }
    }
    }
    // Запуск з поточної директорії
    renameImages($_SERVER['DOCUMENT_ROOT'].'/');
    Як використовувати:

    Збережіть цей код у файл, наприклад rename_images.php.

    Покладіть його в кореневу директорію, з якої потрібно почати пошук.

    Запустіть скрипт