鑑於此變量:URL解析功能
$variable = foo.com/bar/foo
什麼功能將修剪$變量FOO.COM?
編輯:我希望該功能能夠修剪可能在域名後面出現的URL上的任何內容。
由於提前,
約翰
鑑於此變量:URL解析功能
$variable = foo.com/bar/foo
什麼功能將修剪$變量FOO.COM?
編輯:我希望該功能能夠修剪可能在域名後面出現的URL上的任何內容。
由於提前,
約翰
爲OP工作:
$host = parse_url($url, PHP_URL_HOST);
PHP的版本我有工作不接受兩個參數(Zend引擎1.3.0)。隨你。這裏是我的工作代碼 - 你必須有完整的URL包括計劃(http://)。如果您可以安全地假定該方案是http://(而不是https://或其他方法),那麼您可以預先考慮該方案以獲取所需內容。
工作對我來說:
$url = 'http://foo.com/bar/foo';
$parts = parse_url($url);
$host = $parts['host'];
echo "The host is $host\n";
我在我的例子
如果你是罰款得到的子域以及使用http://www.google.com/asdf
,您可以通過拆分「//」和取第1個元素有效刪除協議並獲得www.google.com/asdf
然後,您可以通過「/」拆分並獲得第0個元素。
這看起來很醜。只是集思廣益這裏=)
試試這個:
function getDomain($url)
{
if(filter_var($url, FILTER_VALIDATE_URL, FILTER_FLAG_HOST_REQUIRED) === FALSE)
{
return false;
}
/*** get the url parts ***/
$parts = parse_url($url);
/*** return the host domain ***/
return $parts['scheme'].'://'.$parts['host'];
}
$variable = 'foo.com/bar/foo';
echo getDomain($variable);
您可以使用PHP的parse_url功能,然後進入關鍵的 「主機」 的價值得到主機名
嗯......它不適合我。 – John 2010-02-25 06:36:59
哪個版本?兩個都? – 2010-02-25 06:45:16
第二個沒有工作......但後來我嘗試了第一個,但它確實如此,所以我給了你相應的答案。謝謝! – John 2010-02-25 06:52:24