Пожалуйста помоги!
Мне нужно снять следующий код, чтобы он использовал только часть «значение»
$<object width="360" height="226"><param name="movie" value="http://www.youtube.com/v/IkZuQ-aTIs0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/IkZuQ-aTIs0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="360" height="226"></embed></object>
Таким образом, в этом случае он разделил бы его на http://www.youtube.com/v/IkZuQ-aTIs0
Уловка заключается в том, что он динамичен, поэтому он вытягивает эти коды вставки для разных файлов, чтобы они менялись.
Пожалуйста, помогите: D
<?php $string = '<object width="360" height="226"><param name="movie" value="http://www.youtube.com/v/IkZuQ-aTIs0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/IkZuQ-aTIs0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="360" height="226"></embed></object>'; preg_match_all('#http://www.youtube.com/v/([\w\-]+){11}#is', $string, $matches); print_r( array_unique($matches[0]) ); ?>
Лучший способ – использовать парсер DOM.
http://php.net/manual/en/class.domdocument.php
$doc = new DOMDocument(); $doc->loadHTML('<object width="360" height="226"><param name="movie" value="http://www.youtube.com/v/IkZuQ-aTIs0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/IkZuQ-aTIs0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="360" height="226"></embed></object>');
$string = '<object width="360" height="226"><param name="movie" value="http://www.youtube.com/v/IkZuQ-aTIs0"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://www.youtube.com/v/IkZuQ-aTIs0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="360" height="226"></embed></object>'; $start = strpos($string, 'value="'); $string = substr($string, $start + 7); $end = strpos($string, '" '); $string = substr($string, 0, $end); echo $string;
немного сложнее, чем webartos, но будет захватывать любое значение, а не только ссылку на youtube