2016-03-05 100 views
-1

我想知道如何才能讓當前的URL,但之前?字符:在字符「?」之前獲取當前網址

http://www.example.com/pag1?q=ok 

OUTPUT:

http://www.example.com/pag1 
+0

正則表達式或使用strpos找到簡單的字符串函數?然後用tuw strstr函數取前x個字符。 –

回答

3

你可以爆炸您的網址爲

$url = 'http://www.example.com/pag1?q=ok'; 

$explodedURL= parse_url($url); 

echo '<pre>'; 
print_r($explodedURL['host'].explodedURL['path']); 

echo $explodedURL['scheme'].'://'.$explodedURL['host'].$explodedURL['path']; 

輸出:

Array 
(
[scheme] => http 
[host] => www.example.com 
[path] => /pag1 
[query] => q=ok 
) 
http://www.example.com/pag1 
+0

您應該編輯以包含parse_url函數的庫引用,因爲您可以指定僅檢索url的一個組件,例如,只是主機或只是查詢 –

+0

,如果我不知道完整的網址,要得到它可以使用此代碼:'http://'.$_SERVER ['HTTP_HOST']。$ _ SERVER ['REQUEST_URI']; – Borja

+0

????非常感謝 – Borja

1

喜歡的東西:

$url = 'http://www.example.com/pag1?q=ok’; 
$pos = strpos($url, '?'); 
$yourstr = strstr($url, 0, $pos - 1);