Intereting Posts
Преобразование даты на дату Тип поля календаря Joomla 2.5 в пользовательских формах выбора даты и времени Скрыть платежный адрес с страницы проверки, но сохранить информацию Разбирайте таблицу внешнего веб-сайта Как я могу извлечь защищенный паролем .zip-файл из моего PHP-приложения? R не работает должным образом при использовании функции PHP exec () Laravel – многострочные строки и идентификаторы возврата Ошибка при отправке электронной почты на GoDaddy Server: Laravel 5.1 Получить контент между двумя строками PHP Ошибка JQUERY & php post 500 (внутренняя ошибка сервера) Переменная URL GET имеет необходимый символ хэша Как изящно обрабатывать файлы, которые превышают PHP `post_max_size`? проверить возвращаемое значение метода, который вызывает ошибку с помощью PHPUnit Получить текстовый узел с помощью простого HTML DOM Parser рассчитать количество дней недели в диапазоне дат

Получите идентификатор определенного URL-адреса внутри сообщения и сохраните его в переменной

В моих сообщениях видео есть код ниже:

[videojs mp4="http://www.example.com/video-play.mp4?contentId=7c6255ca14e901d2" poster="http://img.ruphp.com/php/fundososvideos.jpg" preload="none" controls="controls" width="100%" height="400"] 

Мне нужно получить ID 7c6255ca14e901d2 с этого URL http://www.example.com/video-play.mp4?contentId=7c6255ca14e901d2 и сохранить в переменной, которая будет использоваться на странице.

Может ли кто-нибудь объяснить мне, как это сделать?

В PHP попробуйте использовать регулярное выражение. Возможно, вам придется настроить регулярное выражение, если ваш образец не всегда соответствует этому формату.

 $re = '/\[videojs mp4=\"(.*contentId=(.*?))\"/'; $str = '[videojs mp4="http://www.blogger.com/video-play.mp4?contentId=7c6255ca14e901d2" poster="http://img.ruphp.com/php/fundososvideos.jpg" preload="none" controls="controls" width="100%" height="400"]'; preg_match_all($re, $str, $matches); // Print the entire match result print_r($matches); 

И выше результат должен быть

 Array ( [0] => Array ( [0] => [videojs mp4="http://www.blogger.com/video-play.mp4?contentId=7c6255ca14e901d2" ) [1] => Array ( [0] => http://www.blogger.com/video-play.mp4?contentId=7c6255ca14e901d2 ) [2] => Array ( [0] => 7c6255ca14e901d2 ) ) 

Предполагается, что вы получите целую [videojs mp4 = "uri" —…] как строку. Теперь вы хотите обработать его и присвоить ему несколько разных переменных для будущего использования.

 $video_string = '[videojs mp4="http://www.blogger.com/video-play.mp4?contentId=7c6255ca14e901d2" poster="http://img.ruphp.com/php/fundososvideos.jpg" preload="none" controls="controls" width="100%" height="400"]'; if (preg_match('/mp4="(.*)"\sposter/', $video_string, $matches1)) { $url = $matches1[1]; $id = explode('=',parse_url($url)['query'])[1]; echo 'From Video string I get Id= '.$id . ' & url = '.$url; }