<?php
$text = file_get_contents('http://sait.ru');
$pos = strpos($text, ' <table class="list_song">');
$text = substr($text, $pos);
$pos = strpos($text, '</table>');
$text = substr($text, 0, $pos);
$text = strip_tags($text,'<p>,<td>,<table>');
function myfunc(&$text)
{
$text=trim($text);
$text=str_replace("\n","",$text);
$text=str_replace("\r","",$text);
$text=str_replace("\t","",$text);
$text=stripslashes($text);
return $text;
}
echo iconv("utf-8", "windows-1251",$text);
Вся проблема в том, что необходимая информация, занесенная в переменную "text" выводится не так как нужно...хотелось бы её отформатировать..выводится она в таком виде:
23:00 Что-то Кто-то
22:10 Что-то Кто-то
21:30 Что-то Кто-то
20:30 Что-то Кто-то
-----
а мне необходимо в таком виде:
23:00 Кто-то - Что-то
22:10 Кто-то - Что-то
21:30 Кто-то - Что-то
20:30 Кто-то - Что-то
----
Прошу указать, хотя бы, в какую сторону копать, для реализации данной затеи...
Надеюсь, изложил понятно
Заранее спасибо!!
Спустя 16 минут, 4 секунды (12.10.2010 - 21:54) arvitaly написал(а):
Дайте пример совсем исходной строки $text = file_get_contents('http://sait.ru'); вот этой и результат который нужен
Спустя 23 минуты, 44 секунды (12.10.2010 - 22:17) Romkij написал(а):
$text = file_get_contents('http://www.moskva.fm/stations/FM_103.0/20100920');
результат который получаем при парсинге:
Песни за 20 сентября 2010 г.
на Шансон
23:57
Мама, Я Радио Люблю
Леонсия Эрденко
23:55
Сколько Я Ни Старался
Владимир Высоцкий
23:52
Заграничные Конверты
Александр Кальянов
23:50
Как На Грифу Струну
Александр Розенбаум
--------------
а результат который нужен:
23:57 Леонсия Эрденко - Мама, Я Радио Люблю
23:55 Владимир Высоцкий -Сколько Я Ни Старался
23:52 Александр Кальянов - Заграничные Конверты
23:50 Александр Розенбаум - Как На Грифу Струну
и т.д до конца суток - от 00:00 до 23:57
вот как-то так, если что-то не совсем понятно, могу уточнить...
Спустя 22 часа, 21 минута, 46 секунд (13.10.2010 - 20:39) Romkij написал(а):
Тема еще актуальна!
up!
up!
Спустя 11 минут, 40 секунд (13.10.2010 - 20:51) arvitaly написал(а):
Я просил исходный код а не ваше его видение
Спустя 18 минут, 34 секунды (13.10.2010 - 21:09) Romkij написал(а):
Извиняюсь, я просто немного недопонял...
Вот, там продолжается, вплоть до 00:00... кода слишком много, это его часть..он весь идентичен...
А вот так, он выглядит после небольшого форматирования, приведенного в первом посте:
Вот.
<table class="list_song">
<tr>
<td class="number">23:57</td>
<td class="name">
<a href="http://www.moskva.fm/play/2006/1285012656" onclick="return openPlr(this)" class="pict">
<ins class="play-out"></ins>
<img title="" alt="" src="http://img.moskva.fm/covers/33/65/1714765.gif" />
</a>
<p>
<a href="http://www.moskva.fm/artist/леонсия_эрденко/song_1716208" class="song">Мама, Я Радио Люблю</a> <a href="/collection/add_song/1716208" title="Добавить в сборник" class="add" onclick="return manageSong(this)"></a><br />
<a href="/artist/леонсия_эрденко" class="artist">Леонсия Эрденко</a></p>
</p>
</td>
</tr>
<tr>
<td class="number">23:55</td>
<td class="name">
<a href="http://www.moskva.fm/play/2006/1285012536" onclick="return openPlr(this)" class="pict">
<ins class="play-out"></ins>
<img title="" alt="" src="http://img.moskva.fm/covers/33/20/603220.gif" />
</a>
<p>
<a href="http://www.moskva.fm/artist/владимир_высоцкий/song_948700" class="song">Сколько Я Ни Старался</a> <a href="/collection/add_song/948700" title="Добавить в сборник" class="add" onclick="return manageSong(this)"></a><br />
<a href="/artist/владимир_высоцкий" class="artist">Владимир Высоцкий</a></p>
</p>
</td>
</tr>
<tr>
<td class="number">23:52</td>
<td class="name">
<a href="http://www.moskva.fm/play/2006/1285012344" onclick="return openPlr(this)" class="pict">
<ins class="play-out"></ins>
<img title="" alt="" src="http://img.moskva.fm/covers/33/31/1251231.gif" />
</a>
<p>
<a href="http://www.moskva.fm/artist/александр_кальянов/song_1254250" class="song">Заграничные Конверты</a> <a href="/collection/add_song/1254250" title="Добавить в сборник" class="add" onclick="return manageSong(this)"></a><br />
<a href="/artist/александр_кальянов" class="artist">Александр Кальянов</a></p>
</p>
</td>
</tr>
<tr>
<td class="number">23:50</td>
<td class="name">
<a href="http://www.moskva.fm/play/2006/1285012248" onclick="return openPlr(this)" class="pict">
<ins class="play-out"></ins>
<img title="" alt="" src="http://img.moskva.fm/covers/33/87/595487.gif" />
</a>
<p>
<a href="http://www.moskva.fm/artist/александр_розенбаум/song_838951" class="song">Как На Грифу Струну</a> <a href="/collection/add_song/838951" title="Добавить в сборник" class="add" onclick="return manageSong(this)"></a><br />
<a href="/artist/александр_розенбаум" class="artist">Александр Розенбаум</a></p>
</p>
</td>
</tr>
<tr>
<td class="number">23:41</td>
<td class="name">
<a href="http://www.moskva.fm/play/2006/1285011684" onclick="return openPlr(this)" class="pict">
<ins class="play-out"></ins>
<img title="" alt="" src="http://img.moskva.fm/uimg/artists/72x72/96/96da973f3fc107d0ea595122824fae0d.jpeg" />
</a>
<p>
<a href="http://www.moskva.fm/artist/стелла_джанни/song_0108973" class="song">Огонек</a> <a href="/collection/add_song/0108973" title="Добавить в сборник" class="add" onclick="return manageSong(this)"></a><br />
<a href="/artist/стелла_джанни" class="artist">Стелла Джанни</a></p>
</p>
</td>
</tr>
Вот, там продолжается, вплоть до 00:00... кода слишком много, это его часть..он весь идентичен...
А вот так, он выглядит после небольшого форматирования, приведенного в первом посте:
<table class="list_song">
<td class="number">23:57</td>
<td class="name">
<p>
Мама, Я Радио Люблю
Леонсия Эрденко</p>
</p>
</td>
<td class="number">23:55</td>
<td class="name">
<p>
Сколько Я Ни Старался
Владимир Высоцкий</p>
</p>
</td>
<td class="number">23:52</td>
<td class="name">
<p>
Заграничные Конверты
Александр Кальянов</p>
</p>
</td>
<td class="number">23:50</td>
<td class="name">
<p>
Как На Грифу Струну
Александр Розенбаум</p>
</p>
</td>
<td class="number">23:41</td>
<td class="name">
<p>
Огонек
Стелла Джанни</p>
</p>
</td>
<td class="number">23:36</td>
<td class="name">
<p>
Рыбацкая
Вилли Токарев</p>
</p>
</td>
<td class="number">23:32</td>
<td class="name">
<p>
Он Называется Друг
Юрий Белоусов</p>
</p>
</td>
<td class="number">23:29</td>
<td class="name">
<p>
Умница
Михаил Круг</p>
</p>
</td>
Вот.
Спустя 1 час, 3 минуты, 52 секунды (13.10.2010 - 22:13) arvitaly написал(а):
<?php
preg_match_all( '~<td class="number">(.*)</td>.*<a href="http://www.moskva.fm/artist/.*>(.*)</a>.*<a href="/artist/.*>(.*)</a>~Usi', $m[preg_match( '~(<table class="list_song">.*</table>)~si', file_get_contents('http://www.moskva.fm/stations/FM_103.0/20100920'), $m )], $rows ) ;
for ($i=0;$i<count($rows[0]);$i++)
{
echo '<p>' . $rows[1][$i] . ' ' . $rows[3][$i] . ' - ' . $rows[2][$i] . '</p>';
}
?>
Спустя 36 минут, 30 секунд (13.10.2010 - 22:50) Romkij написал(а):
Просто изумительно!!!! так долго парился... спасибо большое!!!
а можете разъяснить, этот скриптик?)
а можете разъяснить, этот скриптик?)
Спустя 9 минут, 46 секунд (13.10.2010 - 22:59) arvitaly написал(а):
Могу, если вы будете разбираться. А это значит задавать нужные вопросы.
Спустя 20 дней, 20 часов, 8 минут, 11 секунд (4.11.2010 - 20:08) Romkij написал(а):
Цитата (arvitaly @ 13.10.2010 - 19:59) |
Могу, если вы будете разбираться. А это значит задавать нужные вопросы. |
С предыдущим кодом разобрался...
Теперь возник еще вопрос по регулярным выражениям...
имеется строка "...........+++б",
хотелось бы, чтобы начиная с первого "+" включительно,все обрезалось..
пробовал так:
<?php
$filename = "D:\PAR\what.xml";
$handle = fopen($filename, "r");
$contents = fread($handle, 600);
fclose($handle);
echo $contents;
$contents = preg_replace("/[+]/","",$contents);
echo $contents;
?>
добился только того, чтобы убрать все "+" из строки, но как убрать не только плюсы, но и все, что после них....
Пожалуйста, подскажите..заранее спасибо!
Спустя 1 день, 2 часа, 48 минут, 37 секунд (5.11.2010 - 22:56) Romkij написал(а):
Вообщем разобрался сам, всем спасибо!
Кому интересно, решение было таким:
preg_replace("/[+](.{5})/ ---- заменить + и 5 символов после него.
Кому интересно, решение было таким:
<?php
// получает содержимое файла в строку
$filename = "D:\DJIN\cur_playing.xml";
$handle = fopen($filename, "r");
$contents = fread($handle, 600);
fclose($handle);
echo $contents;
$contents = preg_replace("/[+](.{5})/","",$contents);
echo $contents;
?>
preg_replace("/[+](.{5})/ ---- заменить + и 5 символов после него.