Программирование радио на сайт
Итак, цель - разобрать .m3u файл с интернет-радио станциями и показать мини-плеер на веб сайте.
Файл состоит из текста вида:
#EXTM3U
#EXTINF:1,(GTM) CorBinA PsychedeliC StaTioN
http://radio.corbina.ru:8000/
Принцип работы:
Теперь можно использовать переменную $radio в любом месте.
Сам код скрипта:
Файл состоит из текста вида:
#EXTM3U
#EXTINF:1,(GTM) CorBinA PsychedeliC StaTioN
http://radio.corbina.ru:8000/
Принцип работы:
- Открываем файл, парсим с помощью preg_match_all все совпадения, чтобы достать номер, название и ссылку на радио-трансляцию.
- Формируем список радио-станций. При переходе по названию-ссылки устанавливаем в кукисах посетителя сайта ссылку на выбранную радио-трансляцию.
- При отображении страницы получаем из кукисов ссылку на трансляцию и формируем флеш-html код.
Формирование флеш html-кода | |
1 |
if($_COOKIE['dgrad_radio']){ $radiolink=$_COOKIE['dgrad_radio']; } else { $radiolink='http://radio.corbina.ru:8035/'; } $radio='<a href="/radio/">Настроить радио</a> <object id="audioplayer660" type="application/x-shockwave-flash" data="http://dgrad.info/uppod.swf" width="84" height="25" style="vertical-align:middle;margin-left:5px;margin-right:5px;"> <param name="allowScriptAccess" value="always" /> <param name="wmode" value="transparent" /> <param name="movie" value="http://dgrad.info/uppod.swf" /> <param name="flashvars" value="comment=Радио&st=/audio45-595.txt&file='.$radiolink.'" /> </object>'; |
Теперь можно использовать переменную $radio в любом месте.
Сам код скрипта:
установка радио проигрывателя на сайт | |
1 |
$radio_list=file_get_contents('Corbina_Radio.m3u'); str_replace("\r",'',$radio_list); preg_match_all('/\#EXTINF\:(.*),(.*)\n(.*)\n/iU',$radio_list,$stock); $radio_arr['id']=$stock[1]; $radio_arr['name']=$stock[2]; $radio_arr['link']=$stock[3]; if($_GET['id']){ setcookie('dgrad_radio',$radio_arr['link'][$_GET['id']-1],time()+360000,'/'); header('location:/radio/'); exit; } print '<div style="margin-left:3em;">'; print '<h1>Настройки радио</h1>'; print 'Установленная станция: '.$radiolink.'<br>'; print 'Выберите радиостанцию:<br>'; foreach($radio_arr['name'] as $k => $v){ $radio_html=' <object id="audioplayer660" type="application/x-shockwave-flash" data="http://dgrad.info/uppod.swf" width="84" height="25" style="vertical-align:middle;margin-left:5px;margin-right:5px;"> <param name="allowScriptAccess" value="always" /><param name="wmode" value="transparent" /> <param name="movie" value="http://dgrad.info/uppod.swf" /><param name="flashvars" value="comment=Радио&st=/audio45-595.txt&file='.$radio_arr['link'][$k].'" /></object>'; print '<p><a href="/radio/?id='.$radio_arr['id'][$k].'">'.$v.'</a> <br>'.$radio_html.'<br> <span class="grey">'.$radio_arr['link'][$k].'</span></p>'; } print '</div>'; |
Для проигрывания трансляции используется флеш-плеер от сайта uppod.ru
Дата записи: 21.04.2010 15:10
Предыдущая тема: Проблема мобильного постинга