2014-03-03 59 views
0

如何獲取網址的某個部分我搜索了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編號。

tt0109772 

所以有人可以解釋或告訴我怎麼做,請

感謝

回答

1

如果它總是子目錄:

echo basename(dirname($link)); 
+0

這是真棒!比「爆炸」更乾淨 – jboneca

0

您可以使用explode像:

$parts = explode("/", $url); 

這會將URL拆分爲數組。然後檢查你想要什麼指標..並把它想:

$id = $parts[3]; 

您可以調試:print_r($parts);

0

不是最優雅的方式,但

$link = '/title/tt0109772/?ref_=fn_al_tt_2'; 
$imdb_id = explode('/', $link); 
$imdb_id = $imdb_id[2]; 
echo $imdb_id; 

會工作。

0

試試這個代碼:(source

$path = parse_url($url, PHP_URL_PATH); 
$segments = explode('/', $path); 

那麼我認爲你需要$segments[1]得到IMDB編號。

1

你可以使用explode()

$str = "/title/tt0109772/?ref_=fn_al_tt_2"; 
$arrUrl = explode("/",$str); 
$id = $arrUrl[2]; 
echo $id; 

demo

相關問題