2010-12-17 20 views
3

考慮:老變醜的URL像/somepage?ln=en被重寫htaccess的,以/en/somepage
考慮:使用規範的meta標籤,與此PHP腳本它上面填寫整齊網址:如何通過PHP獲取/閱讀Meta Canonical最乾淨的網址?

如何使他們像規範?

 <link rel="canonical" href="<?=$canonicalURL?>"> 

什麼方法可以解析當前URL沒有任何字符串,或刪除的URL字符串外,並把它變成規範的網址是什麼?

回答

1

本質上,你只是想擺脫從$擴展查詢字符串,正確的?

<?php 
$qsIndex = strpos($extensions, '?'); 
$extensions = $qsIndex !== FALSE ? substr($extensions, 0, $qsIndex) : $extensions;
+0

無瑕執行,Simshaun!這條線索讓所有事情都變得明亮起來 – Sam 2010-12-19 02:32:14

3
$url = parse_url('http://example.com/path/page?param=value'); 

print_r($url) 

Array 
(
    [scheme] => http 
    [host] => example.com 
    [path] => /path/page 
    [query] => param=value 
) 

然後,你可以只是做:

$url['scheme'] . '://' . $url['host'] . $url['path'] 

甚至:

$url = 'http://example.com/path/page?param=value'; 
'http://example.com' . parse_url($url, PHP_URL_PATH) 
+0

本你是一個天才,太多,我什至不明白你的答案完全++ 1 – Sam 2010-12-19 02:30:46

+0

@Sam - 當然,完成。 – Ben 2010-12-19 17:54:58

+0

- 非常感謝本。 – Sam 2010-12-19 17:58:35