PHP Необходимо добавить новую строку с текстом после совпадения текста строки - PullRequest
0 голосов
/ 08 мая 2020

Привет, есть текстовый файл с такой структурой:

#EXTM3U
#EXTINF:-1,Name 1
https://somelink/playlist.m3u8
#EXTINF:-1,Name 2
https://somelink/playlist.m3u8
#EXTINF:-1,Name 3
https://somelink/playlist.m3u8
....
...
..
.

Нужен php скрипт, добавляющий новую строку со stati c текст строки после текстовой строки, соответствующей таким критериям поиска текста части "#EXTINF "и повторить эхо:

#EXTM3U
#EXTINF:-1,Name 1
Some text
https://somelink/playlist.m3u8
#EXTINF:-1,Name 2
Some text
https://somelink/playlist.m3u8
#EXTINF:-1,Name 3
Some text 
https://somelink/playlist.m3u8
....
...
..
.

Нужно такое сопоставление:

$failas = 'Playlist.txt';

$aArray = file($failas, FILE_IGNORE_NEW_LINES);

// Iterate throug the array
foreach ($aArray as $sLine) {

    $aData = explode("\n", $sLine);
    $sName = $aData[0];

    //echo $sName;
    $contents = file_get_contents($sName);
    //echo $contents;

    $searchfor = '#EXTINF:'; //Pattern for searching

    $pattern = preg_quote($searchfor, '/');
    $pattern = "/^.*$pattern.*\$/m";

    if(preg_match_all($pattern, $contents, $matches)){}
        else{echo "Not found";}

    foreach($matches[0] as $m){
        $channel = explode(",", $m);
        echo "<li>" . $channel[1] . "</li>";
    };
}

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...