php 从URL字符串中删除.com、.net等

ghg1uchk  于 2023-02-03  发布在  PHP
关注(0)|答案(6)|浏览(125)

如果$domain =apple.com或mit.org.edu.au,我如何使用PHP删除.“com”和从点开始的所有内容?例如,apple.com变为apple,mit.org.edu.au变为mit(忽略www.)。

omhiaaxx

omhiaaxx1#

如果你已经有了这个域,那么简单地分解这个域,并取数组的第一个元素。

$domain = 'apple.com';
$domain_parts = explode('.', $domain);
echo $domain_parts[0]; // returns apple

请注意,上面的内容不会考虑子域。例如,“www.apple.com”将返回“www”。但根据您上面的要求,explode可能已经足够了。
如果您还没有域,那么可以使用PHP的parse_url function从URL中提取域(主机)。

50few1ms

50few1ms2#

<?php
$domain1 = 'apple.com';
$domain2 = 'mit.org.edu.au';
$exploded1 = explode('.',$domain1);
$exploded2 = explode('.',$domain2);
echo $exploded1[0];
echo $exploded2[0];
?>

参见PHP的explode函数。下面是一个**codepad**示例。

amrnrhlw

amrnrhlw3#

使用explode

$tokens = explode(".", "apple.com");
echo $tokens[0]; // apple
xxhby3vn

xxhby3vn4#

答案很简单,只有一行:

<?php echo explode('.', $url)[0]; ?>
cvxl0en2

cvxl0en25#

就像其他人说的,使用爆炸。$raw = 'apple.com';$url =分解(“.”,$raw);返回$url[0];
如果域中有一个“www”,那么做一个简单的检查,例如if($url[0] == 'www'){ echo $url[1];}否则{回显$url[0];}

xmakbtuz

xmakbtuz6#

我不喜欢所有这些答案...如果你知道域,这一切都是没有必要的...如果你不知道域,你最肯定应该帐户的子域。

$parts = explode('.', $domain);

array_pop($parts); //remove the TLD

$url = join('.', $parts);  //put it back together, sans the TLD

相关问题