Удалить TXT файлы по кодировке

Discussion in 'PHP' started by Axeee, 2 Nov 2015.

  1. Axeee

    Axeee Elder - Старейшина

    Joined:
    26 Nov 2008
    Messages:
    286
    Likes Received:
    15
    Reputations:
    0
    Стоит задача, удалить посредством php файлы формата тхт из папки, которые не в правильной кодировке..

    т.е. в папке 100500 файлов тхт, нужен скрипт, который после запуска удалит те файлы, в которых вместо текста иероглифы..

    Уже неделю не могу понять как это сделать.

    Иероглифы в таком виде обычно:

    Code:
    Налоги Рё налоговый учёС
    либо самым лучшем вариантом было бы написание скрипта, который исправлял кодировку в таких файлах.. но думаю проще их удалить.

    з.ы. остальные файлы содержат текст (кириллицу)
     
  2. Axeee

    Axeee Elder - Старейшина

    Joined:
    26 Nov 2008
    Messages:
    286
    Likes Received:
    15
    Reputations:
    0
    апну, очень нужен данный скрипт
     
  3. bardak

    bardak Member

    Joined:
    18 Sep 2015
    Messages:
    23
    Likes Received:
    6
    Reputations:
    0
    =Налоги и налоговый учё

    зачем удалять? можно же нормальную кодировку вернуть....CP1251 > UTF-8

    PHP:
    <?
    $path="./tmp"//путь к каталогу, в котором лежат файлы для перекодировки
    $handle=opendir($path);
    while (
    $file readdir($handle)){
    if (
    is_file($path."/".$file)){
    $text=file_get_contents($path."/".$file);
    $text=iconv("cp1251""utf-8"$text);
    file_put_contents($path."/".$file$text);
    }
    }
    ?>
     
    #3 bardak, 3 Nov 2015
    Last edited: 3 Nov 2015
    DiabloZet and Axeee like this.
  4. Axeee

    Axeee Elder - Старейшина

    Joined:
    26 Nov 2008
    Messages:
    286
    Likes Received:
    15
    Reputations:
    0
    подавляющее количество исправляет, но не все :(
    я так понял можно дописать в скрипте под:
    Code:
    $text=iconv("cp1251", "utf-8", $text);
    такую же строку, но с другой кодировкой правильно понимаю ?
    и что дописать нужно, что бы скрипт удалял те файлы, в которых не получилось исправить кодировку.. ?
     
  5. bardak

    bardak Member

    Joined:
    18 Sep 2015
    Messages:
    23
    Likes Received:
    6
    Reputations:
    0
    думаю кодировка везде одна.. скорее тут проблема с большими файлами.. перебирать их построчно что-ли....
     
    Axeee likes this.
  6. Axeee

    Axeee Elder - Старейшина

    Joined:
    26 Nov 2008
    Messages:
    286
    Likes Received:
    15
    Reputations:
    0
    да мне проще их как то удалить если не получается по какой то причине определить или изменить кодировку..
    вот как это все в скрипте прописать не знаю..
     
  7. Axeee

    Axeee Elder - Старейшина

    Joined:
    26 Nov 2008
    Messages:
    286
    Likes Received:
    15
    Reputations:
    0
    есть варианты как это сделать ?