Предисловие. Имеется разрабатываемый сейчас сайт http://svadebka.hol.es на базе DLE, с разделом "видеозаписи". В указанном разделе размещаются публикации со вставкой видеозаписей из сервиса YouTube. В шаблоне сайта размещен блок вывода последних видеозаписей. Данный блок выводит ссылки на последние размещенные публикации из раздела "видеозаписи", а также должен выводить скриншот видеозаписи размещенного внутри публикации. Постановка задачи. Информацию, размещенную внутри каждой публикации можно вытащить из БД в виде одной строки имеющий примерно следующий вид: <!--dle_media_begin:http://www.youtube.com/watch?v=s7Xm1fmV9DU--><iframe title="YouTube video player" width="640" height="480" src="http://www.youtube.com/embed/s7Xm1fmV9DU?rel=0&wmode=transparent" frameborder="0" allowfullscreen></iframe><!--dle_media_end--> На данном примере указан только код вставки видео на страницу. Но нужно учитывать, что до и после данного кода может находиться текст публикации. Внутри данного кода имеется необходимый нам ID нужного видео, состоящий из 11 символов: "s7Xm1fmV9DU". Скриншот нужного видео можно получить с ютуба по ссылке http://img.youtube.com/vi/[VIDEO_ID]/[0-3].jpg Конечно у каждого видео будет разный ID, но ссылка на нужный ID всегда следует за строчкой "src="http://www.youtube.com/embed/" Задача. Средствами PHP необходимо: 1) взять текст публикации из БД в виде одной строки (присвоить его значение к строковой переменной) ; 2) найти в данной строке значение "src="http://www.youtube.com/embed/" и получить позицию последнего символа; 3) с последующих дальше позиций получить значение 11 символов и присвоить его ко второму переменному. 4) вывести скриншот видеозаписи в нужном месте блока "видеозаписи". Например так <img src="http://img.youtube.com/vi/<?php echo значение_переменной2 ?>/0.jpg" alt="Скриншот фильма" {title}"> На сайте сейчас вывод скриншотов реализовано не совсем так как нужно. У меня не получается реализовать 2 и 3 пункт поставленной задачи. Подскажите как решить данную задачу.
Re: Задача на PHP с поиском и выборкой нужных значений в стр Именно так как вы написали и решить. Вам что надо, код за вас написать?
Re: Задача на PHP с поиском и выборкой нужных значений в стр Да, у меня не получается написать код. Пробовал писать след. код: $str = '<!--dle_media_begin:http://www.youtube.com/watch?v=s7Xm1fmV9DU--><iframe title="YouTube video player" width="640" height="480" src="http://www.youtube.com/embed/s7Xm1fmV9DU?rel=0&wmode=transparent" frameborder="0" allowfullscreen></iframe><!--dle_media_end-->'; preg_match (".+/embed//([^\b]+)",$str, $matches); print_r( $matches); На выходе получаю ошибку. Не подскажете как должно быть правильно?
Re: Задача на PHP с поиском и выборкой нужных значений в стр Проверял на сайте http://sandbox.onlinephpfunctions.com PHP версии 5.3.27 выдает следующий результат: Код (Text): Result: <br /> <b>Warning</b>: preg_match() [<a href='function.preg-match'>function.preg-match</a>]: No ending delimiter '.' found in <b>[...][...]</b> on line <b>3</b><br />
Re: Задача на PHP с поиском и выборкой нужных значений в стр Решил задачу следующим кодом: Код (Text): <? $id = strpos('{short-story}', "embed"); echo substr('{short-story}', $id+6, 11); ?>
Re: Задача на PHP с поиском и выборкой нужных значений в стр preg_match ("~embed\/(.*?)\?~",$str, $matches);