Получение определенной части URL
Как я могу получить определенную часть URL-адреса, который я искал в Google и прочитал несколько учебных пособий, но, кажется, не могу прийти в голову, может быть, кто-то может показать мне из примера ниже.
Вот мой код
<?php
include "simple_html_dom.php";
$title = "fast";
$html = file_get_html("http://www.imdb.com/find?q=".urlencode($title)."&s=all");
$element = $html->find('[class="result_text"] a', 1);
$link = $element->href;
echo $link;
// Clear dom object
$html->clear();
unset($html);
?>
Теперь это эхо
/title/tt0109772/?ref_=fn_al_tt_2
Но я хочу только IMDB ID.
tt0109772
Так может кто-нибудь объяснить или показать мне, как это сделать, пожалуйста
Спасибо
5 ответов
Решение
Ты можешь использовать explode()
:
$str = "/title/tt0109772/?ref_=fn_al_tt_2";
$arrUrl = explode("/",$str);
$id = $arrUrl[2];
echo $id;
Ты можешь использовать explode
лайк:
$parts = explode("/", $url);
Это разделит URL на массив. Затем проверьте, какой индекс вы хотите.. и получите его так:
$id = $parts[3];
Вы можете отладить с помощью: print_r($parts);
Не самый элегантный способ, но
$link = '/title/tt0109772/?ref_=fn_al_tt_2';
$imdb_id = explode('/', $link);
$imdb_id = $imdb_id[2];
echo $imdb_id;
Буду работать.
Попробуйте этот код: ( источник)
$path = parse_url($url, PHP_URL_PATH);
$segments = explode('/', $path);
Тогда я думаю, что вам нужно $segments[1]
чтобы получить идентификатор IMDB.