Как автомат. сгенерировать новую ссылку на основе существующей?

Статус
В этой теме нельзя размещать новые ответы.

Vakulenko Yura

Новичок
Ребята. Подскажите! Вот у меня есть видео файл с разными разрешениями (240р, 360р, 480р, 720р) я хочу в медиа плеере дать только ссылку на видео с 360р разрешением и на основе этой ссылки должны автомат формир остальные 3 ссылки для кач 240р, 480р, 720р.

и перед обработкой проверить соотв ли ссылка шаблону http://мойдомен.ру/vххххххххх/videos/хххххххххх.360.mp4 , если не соотв тогда формировать новые не нужно
Вот шаблон ссылки на 360р видео
http://мойдомен.ру/v155421286/videos/990d237312.360.mp4

Соотв остальные ссылки на этот файл для кач 240р, 360р, 720р будут иметь вид и должны формир автоматом на основе ссылки на 360р видео.
http://мойдомен.ру/v155421286/videos/990d237312.240.mp4
http://мойдомен.ру/v155421286/videos/990d237312.480.mp4
http://мойдомен.ру/v155421286/videos/990d237312.720.mp4

Как это сделать ? переменная в кот хранится ссылка для обработки это $SOURCE
т.е $SOURCE='http://мойдомен.ру/v155421286/videos/990d237312.360.mp4' т.е ее и обрабатывать
И нужно еще для каждого файла автом писать значения:
для 240р видео - height:240px, width:426px
для 360р видео - height:360px, width:640px
для 480р видео - height:480px, width:854px
для 480р видео - height:720px, width:1280px
Спасибо!
 

SiZE

Новичок
Сделай строковую замену регулярным выражением через preg_replace
 

Vakulenko Yura

Новичок
а как шаблон замены написать? я не знаю просто. Знаю что нужно исп preg_replace или preg_match но что там писать совсем не знаю!
 

Vakulenko Yura

Новичок
так я тут код забацал проверки но он чего-то не фурычит. Работает только после else. Видимо не прав шаблон проверки составлен. Могли бы вы посмотреть в чем причина и навести на путь истины. вот мой код для ссылки вида
PHP:
$source_link="{SOURCE}";
if (preg_match("/http:\/\/cs[0-9]{6}.v1.com\/u[0-9]{9}\/videos\//", $source_link))
            {
                preg_match("/(http:\/\/cs[0-9]{6}.v1.com\/u[0-9]{9}\/videos\/[a-z0-9]{10})/", $source_link, $longlink);
                preg_match("/.([0-9]{3}).mp4$/", $source_link, $matches_h);
                $height = $matches_h[1];
                if ($height == '240') {
                    $file240 = $source_link;
                    $file360 = $longlink[1].'.360.mp4';
                    $file480 = $longlink[1].'.480.mp4';
                    $file720 = $longlink[1].'.720.mp4';}
                if ($height == '360') {
                    $file240 = $longlink[1].'.240.mp4';
                    $file360 = $source_link;
                    $file480 = $longlink[1].'.480.mp4';
                    $file720 = $longlink[1].'.720.mp4';}
                if ($height == '480') {
                    $file240 = $longlink[1].'.240.mp4';
                    $file360 = $longlink[1].'.360.mp4';
                    $file480 = $source_link;
                    $file720 = $longlink[1].'.720.mp4';}
                if ($height == '720') {
                    $file240 = $longlink[1].'.240.mp4';
                    $file360 = $longlink[1].'.360.mp4';
                    $file480 = $longlink[1].'.480.mp4';
                    $file720 = $source_link;}
               
                $playlist ="'playlist': [{
            'image': '{SITEURL}/templates/gk_startup/images/slides_movie_not_embedded.jpg',
            'sources': [
                        { 'file': '".$file240."', 'width': '426', 'height': '240'},
                        { 'file': '".$file360."', 'width': '640', 'height': '360'},
                        { 'file': '".$file480."', 'width': '854', 'height': '480'},
                        { 'file': '".$file720."', 'width': '1280', 'height': '720'}
            ]
       
        }]";
            } else {$playlist ="'file': '".$source_link."',
        'image': '{SITEURL}/templates/gk_startup/images/slides_movie_not_embedded.jpg'";}
$mediaplayerEmbedRemote = "
<div id=\"avID_{SOURCEID}\" style=\"width:{WIDTH}px;height:{HEIGHT}px;\" title=\"HDkinoCool!\"></div>
<script type=\"text/javascript\">
    jwplayer('avID_{SOURCEID}').setup({
       
        ".$playlist.",
        'height': '{HEIGHT}',
        'width': '{WIDTH}',
        'modes': [
            { type: 'html5' },
          { type: 'flash', src: '{PLUGIN_PATH}/includes/js/mediaplayer/player.swf' },
          { type: 'download' }
        ],
        'autostart': '{PLAYER_AUTOPLAY}',
        'backcolor': '{PLAYER_BACKGROUND}',
        'plugins': {
            'viral-2': {
                'onpause': 'false',
                'oncomplete': 'true'
            },
           
            'timeslidertooltipplugin-3': {}
        },
        'controlbar': '{PLAYER_CONTROLBAR}',
        'skin': '{PLUGIN_PATH}/includes/js/mediaplayer/skins/{PLAYER_SKIN}/{PLAYER_SKIN}.zip'
       
    });


</script>
";
 

Mr.Nobody

Новичок
PHP:
$source_link = "http://vk.com/v155421286/videos/990d237312.240.mp4";
$pattern = '/^(http:\/\/)([a-z]+).com\/(\w+)\/videos\/(\w+).[0-9]{3}.mp4$/';
$rsPregMatch = preg_match($pattern, $source_link, $matches);

$arTypeFile = array(
    '240' => '240.mp4',
    '360' => '360.mp4',
    '480' => '480.mp4',
    '720' => '720.mp4'
);

if ($rsPregMatch) {

    $arExplodeUrl = explode('.', $source_link);

    $heightVideo = $arExplodeUrl[count($arExplodeUrl) - 2];

    if (array_key_exists($heightVideo, $arTypeFile)) {

        $linck = $arTypeFile[$heightVideo];

    }
}
var_dump($linck)//'240.mp4' ;
Это примерный код.
 

AmdY

Пью пиво
Команда форума
Тема закрыта

Варез, взлом, кража контента и другие противоправные действия запрещены к обсуждению на форуме.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху