Как изменить кодировку всех файлов в папке глобально на PHP?

Пользователь

от bart , в категории: PHP , 7 месяцев назад

Как изменить кодировку всех файлов в папке глобально на PHP?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jorge , 7 месяцев назад

@bart 

Для изменения кодировки всех файлов в папке глобально на PHP можно использовать следующий код:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
<?php

$dir = '/path/to/directory'; // замените на путь к вашей папке
$encoding_from = 'iso-8859-1'; // замените на текущую кодировку файлов
$encoding_to = 'utf-8'; // замените на желаемую кодировку

$files = glob($dir . '/*.{php,txt}', GLOB_BRACE); // выберите только файлы с расширениями .php и .txt

foreach ($files as $file) {
    $content = file_get_contents($file);
    $content = iconv($encoding_from, $encoding_to, $content);
    file_put_contents($file, $content);
}


В этом примере мы используем функцию glob(), чтобы получить список файлов в папке с расширениями .php и .txt, и затем проходимся по каждому файлу с помощью цикла foreach. Для каждого файла мы считываем его содержимое с помощью функции file_get_contents(), затем изменяем кодировку содержимого с помощью функции iconv() и записываем измененное содержимое обратно в файл с помощью функции file_put_contents().