PHP: Remove 'WWW' from URL inside a String

2019-01-24 04:05发布

问题:

Currently I am using parse_url, however the host item of the array also includes the 'WWW' part which I do not want. How would I go about removing this?

$parse = parse_url($url);
print_r($parse);
$url = $parse['host'] . $parse['path'];
echo $url;

回答1:

$url = preg_replace('#^www\.(.+\.)#i', '$1', $parse['host']) . $parse['path'];

This won't remove the www in www.com, but www.www.com results in www.com.



回答2:

preg_replace('#^(http(s)?://)?w{3}\.#', '$1', $url);

if you don't need a protocol prefix, leave the second parameter empty



回答3:

$url = preg_replace('/^www\./i', '', $parse['host']) . $parse['path'];


回答4:

str_ireplace('www.','',$parse['host']);