是否可以使用PHP将域名解析为IP地址?
好吧,很简单的问题。所以这对你来说是个好消息,我想。是否可以使用PHP将域名解析为IP地址?
更透彻的解释:
我有一个PHP脚本,让我的网址添加到数据库。我希望脚本将URL解析为IP地址,以便将其存储。然而,一些URL的是这样的:
http://111.111.111.111/~example/index.php
所以还需要与合作。
我不是确实这是可能的,但它只是有道理的。
所以:是否有可能,如果有,如何?
echo gethostbyname('stackoverflow.com'); // 69.59.196.211
您可以使用parse_url抓住从URL中的主机:
$urlParts = parse_url('http://111.111.111.111/~example/index.php');
print_r($urlParts);
/*
Array
(
[scheme] => http
[host] => 111.111.111.111
[path] => /~example/index.php
)
*/
谢谢,这有助于很多。特别是parse_url() – Rob 2010-05-04 13:10:42
不客气。很高兴我能帮上忙。 – webbiedave 2010-05-04 14:25:50
gethostbynamel() - 获取对应于给定的Internet主机名的IPv4的地址列表。
用法:
$ips = gethostbynamel('stackoverflow.com');
/*
Array
(
[0] => 69.59.196.211
)
*/
echo '<pre>';
print_r($ips);
echo '</pre>';
$ips = gethostbynamel('google.com');
/*
Array
(
[0] => 74.125.39.105
[1] => 74.125.39.106
[2] => 74.125.39.147
[3] => 74.125.39.99
[4] => 74.125.39.103
[5] => 74.125.39.104
)
*/
echo '<pre>';
print_r($ips);
echo '</pre>';
获取主机出URL,你可以用这一个班轮:
// 111.111.111.111
echo parse_url('http://111.111.111.111/~example/index.php', PHP_URL_HOST);
为什么downvote? – 2010-05-04 00:20:42
Yust一个评论。普通网址无法使用IP地址。例如,如果你尝试输入我的服务器的IP地址,它会给你一个404,因为你有错误的'hostname'-hreader。只是觉得我让你知道... – Alxandr 2010-05-03 23:08:54
我不明白你的意思。你是说'http:// 111.111.111.111 /〜example/example.php'不行吗? – Rob 2010-05-04 12:35:16