@Kypidon4ik
Фрилансер, Wordpress developer

Перестал конвертироваться txt файл в разметку html, как исправить?

Добрый день! Перестал работать php код, подскажите в чем проблема, не могу найти!

spoiler

Код скрипта
<?php

$dir    = 'input/';
$tvdays = array_diff(scandir($dir), array('..', '.'));


$channels =  array(
    array(
        'name' => 'belarus1',
        'title' => 'Беларусь 1',
        'img' => 'bt1.jpg'
    ),
    array(
        'name' => 'ont',
        'title' => 'ОНТ',
        'img' => 'ont.jpg'
    ),
    array(
        'name' => 'ctv',
        'title' => 'СТВ',
        'img' => 'ctv.jpg'
    ),
    array(
        'name' => 'mir',
        'title' => 'Мир',
        'img' => 'mirtv.jpg'
    ),
    array(
        'name' => 'rtr-bel',
        'title' => 'РТР-Беларусь',
        'img' => 'rtr-bel.jpg'
    ),
    array(
        'name' => 'ntv-bel',
        'title' => 'НТВ-Беларусь',
        'img' => 'ntv-bel.jpg'
    ),

    array(
        'name' => 'bt2',
        'title' => 'Беларусь 2',
        'img' => 'bt2.jpg'
    ),
    array(
        'name' => 'bt3',
        'title' => 'Беларусь 3',
        'img' => 'bt3.jpg'
    ),
    array(
        'name' => 'bt5',
        'title' => 'Беларусь 5',
        'img' => 'bt5.jpg'
    ),
    array(
        'name' => 'kinopremiere',
        'title' => 'Кинопремьера',
        'img' => 'kinopremiere.jpg'
    ),
    array(
        'name' => 'belbizch',
        'title' => 'ББЧ',
        'img' => 'bbk_logo.png'
    ),
    array(
        'name' => 'karusel',
        'title' => 'Карусель INT',
        'img' => 'karusel.jpg'
    ),
    array(
        'name' => 'culture',
        'title' => 'Россия-Культура',
        'img' => 'culture.jpg'
    ),
    array(
        'name' => 'tv3',
        'title' => 'ТВ3',
        'img' => 'tv3.jpg'
    ),
    array(
        'name' => 'setanta-sport-plus',
        'title' => 'Сетанта Спорт 2',
        'img' => 'setanta-sport-plus.jpg'
    ),
    array(
        'name' => 'perec',
        'title' => 'Перец I',
        'img' => 'perec.jpg'
    ),
    array(
        'name' => '5_kanal',
        'title' => '5 канал',
        'img' => '5_kanal.jpg'
    ),
    array(
        'name' => 'visat-nature',
        'title' => 'Viasat Nature',
        'img' => 'visat-nature.png'
    ),
    array(
        'name' => 'vtv',
        'title' => 'ВТВ',
        'img' => 'vtv.png'
    ),
    array(
        'name' => 'tv100ruskino',
        'title' => 'TV 1000 Русское кино',
        'img' => 'tv100ruskino.png'
    ),
    array(
        'name' => 'travelplusadventure',
        'title' => 'Travel + Adventure',
        'img' => 'travelplusadventure.png'
    ),
    array(
        'name' => 'tv1000',
        'title' => 'TV 1000',
        'img' => 'tv1000.png'
    ),
    array(
        'name' => 'kinosemja',
        'title' => 'Киносемья',
        'img' => 'kinosemja.png'
    ),
    array(
        'name' => 'kinosvidanije',
        'title' => 'Киносвидание',
        'img' => 'kinosvidanije.png'
    ),
    array(
        'name' => 'mirseriala',
        'title' => 'Сериалы',
        'img' => 'mirseriala.png'
    ),
    array(
        'name' => 'zhivotnye',
        'title' => 'Домашние животные',
        'img' => 'zhivotnye.png'
    ),
    array(
        'name' => 'tntint',
        'title' => 'ТНТ Int',
        'img' => 'tnt-belarus.jpg'
    ),
    array(
        'name' => 'shansontv',
        'title' => 'Шансон ТВ',
        'img' => 'shansontv.png'
    ),
    array(
        'name' => 'muzskoekino',
        'title' => 'Мужское кино',
        'img' => 'muzskoekino.png'
    ),
    array(
        'name' => 'sonychannel',
        'title' => 'Sony Channel',
        'img' => 'sonychannel.png'
    ),
    array(
        'name' => 'paramauntcomedy',
        'title' => 'Paramount Comedy',
        'img' => 'paramauntcomedy.jpg'
    ),
    array(
        'name' => 'nickelodeon',
        'title' => 'Nickelodeon',
        'img' => 'nickelodeon.png'
    ),
    array(
        'name' => 'ohotnik_i_ribolov',
        'title' => 'Охотник и рыболов HD',
        'img' => 'ohotnik_i_ribolov.png'
    ),
    array(
        'name' => 'europa_plus_tv',
        'title' => 'Europa Plus TV',
        'img' => 'europe_plus.jpg'
    ),
    array(
        'name' => 'ECTV',
        'title' => 'English Club TV',
        'img' => 'ECTV.png'
    ),
    array(
        'name' => 'ysadbatv',
        'title' => 'Усадьба ТВ',
        'img' => 'ysadbatv.png'
    ),
    array(
        'name' => 'edapremium',
        'title' => 'ЕДА Премиум',
        'img' => 'edapremium.png'
    ),
    array(
        'name' => 'Fashion-One',
        'title' => 'Fashion One',
        'img' => 'Fashion-One.jpg'
    ),
    array(
        'name' => 'tourist',
        'title' => 'Глазами Туриста',
        'img' => 'tourist.jpg'
    ),
    array(
        'name' => 'PlusTV',
        'title' => '+TV',
        'img' => 'PlusTV.jpg'
    ),
    array(
        'name' => 'nick_jr',
        'title' => 'Nick Jr. Global',
        'img' => 'nick_jr.jpg'
    ),
    array(
        'name' => 'viasatexplore',
        'title' => 'Viasat Explorer',
        'img' => 'viasatexplore.png'
    ),
    array(
        'name' => 'viasathistory',
        'title' => 'Viasat History',
        'img' => 'viasathistory.jpg'
    ),
    array(
        'name' => 'viasathistoryrussia',
        'title' => 'History Russia',
        'img' => 'viasathistory.jpg'
    ),
    array(
        'name' => 'tv1000action',
        'title' => 'TV1000 Action',
        'img' => 'TV1000_Action.png'
    ),
    array(
        'name' => 'anekdot_tv',
        'title' => 'Анекдот-ТВ',
        'img' => 'anekdottv.jpg'
    ),
    array(
        'name' => 'illusion',
        'title' => 'Русский иллюзион',
        'img' => 'illusion.jpg'
    ),
    array(
        'name' => 'kinocomedy',
        'title' => 'Кинокомедия',
        'img' => 'kinocomedy.jpg'
    ),
    array(
        'name' => 'sci',
        'title' => 'SONY Sci-Fi',
        'img' => 'scifi_logo.jpg'
    ),
    array(
        'name' => 'history2',
        'title' => 'History 2',
        'img' => 'history2.jpg'
    ),
    array(
        'name' => 'setanta_spotrs',
        'title' => 'Сетанта Спорт 1',
        'img' => 'setanta_spotrs.png'
    ),
    array(
        'name' => 'ufc_tv',
        'title' => 'UFC TV',
        'img' => 'ufc_logo.jpg'
    ),
    array(
        'name' => 'belros',
        'title' => 'БелРос',
        'img' => 'belros.jpg'
    ),
    array(
        'name' => 'nano_hd',
        'title' => 'Nano HD',
        'img' => 'nano_hd.jpg'
    ),
    array(
        'name' => 'dom-kino',
        'title' => 'Дом кино',
        'img' => 'dom-kino.jpg'
    ),
    array(
        'name' => 'tnt-music',
        'title' => 'ТНТ Music',
        'img' => 'tnt-music.jpg'
    ),
    array(
        'name' => 'domashniu',
        'title' => 'Домашний I',
        'img' => 'domashniu.png'
    ),
    array(
        'name' => 'minsktv',
        'title' => 'ЯСНАе ТВ',
        'img' => 'minsktv.jpg'
    ),
    array(
        'name' => 'autoplus',
        'title' => 'Авто Плюс',
        'img' => 'autoplus.jpg'
    ),
   
);




foreach ($tvdays as $tvday) {

    $fileName = 'input/' . $tvday;
    $outputName = 'output/' . $tvday;

    $write = file_get_contents($fileName);

    foreach ($channels as $channel) {
        $write = editing($channel, $write);
    }

    $write = preg_replace('/#\.(?=[\s*(\r\n)(\n\r)\n\r])#u/', "", $write);

    $pieces = explode("\r\n", $write);

    foreach ($pieces as $piece) {
        $write = str_replace($piece, "<li>" . $piece . "</li>", $write);
    }

    $write = str_replace("<li><tr><td>", "</ul></div><div class='tv-channel'>", $write);
    $write = str_replace("</td></tr></li>", "<ul>", $write);
    $write = '<div class="tv-day"><div class="tv-date"><ul>' . $write;
    $write .= '</ul></div></div>';
    $write = file_put_contents($outputName, $write);
}

function editing($channel, $subString)
{
    $pattern = '/(?<=(\r\n))' . preg_quote($channel['title']) . '/u';
    $replacement = '<tr><td><img id="' . $channel['name'] . '" src="/parser/tv/logo/' . $channel['img'] . '" alt="ТВ программа ' . $channel['title'] . '" title="ТВ программа ' . $channel['title'] . '" width="50" height="50"></td>' . '<td><h3>Канал ' . $channel['title'] . '</h3></td></tr>';
    $subString = preg_replace($pattern, $replacement, $subString);
    return $subString;
}

  • Вопрос задан
  • 47 просмотров
Решения вопроса 1
@Kypidon4ik Автор вопроса
Фрилансер, Wordpress developer
UPD Проблема была в кодировке, она каким то образом слетела в файлах. Закрыто.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы