我想将ip地址存储为字符串中的变量。
到目前为止,我已经在PHP中创建了一个快速ping命令:
<?php
$output = shell_exec('ping -c1 google.co.uk');
if(preg_match_all('/\((.*?)\)/',$output,$match)) {
var_dump($match[1]);
}
?>
这输出以下内容:
array(3) { [0]=> string(12) "64.15.112.59" [1]=> string(2) "84" [2]=> string(13) "83.125.22.187" }
在上面的PHP命令中,我想要一些帮助存储第一个IP地址(64.15.112.59)。
我无法知道这是如何完成的。也许我的做法是错误的,但我想知道这是否可行:D
答案 0 :(得分:3)
有一个名为dns_get_record
的php函数可以帮助你从fqdn获取ip。
$ipInfo = dns_get_record('google.co.uk', DNS_A);
echo $ipInfo[0]['ip'];
此回音的输出为74.125.132.94
(来自我的位置)
有关更多信息,请访问PHP网站:http://php.net/manual/en/function.dns-get-record.php
答案 1 :(得分:0)
请使用:
$ip = gethostbyname('google.co.uk');
您将获得存储在$ip
变量中的IP。也不需要preg_match,如果函数无法获得IP,你将得到bool false结果。
希望它有所帮助。
答案 2 :(得分:0)
这是我在奔驰;)
的帮助下完成的编码$ipInfo = dns_get_record('google.co.uk', DNS_A);
$ip = $ipInfo[0]['ip'];
将文本输出到$ ip variable。