0

我想将 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

4

3 回答 3

3

有一个调用的 php 函数dns_get_record可以帮助您从 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

于 2013-07-25T19:27:58.033 回答
0

只需使用这个:

$ip = gethostbyname('google.co.uk');

$ip您将获得存储在变量中的 IP 。也不需要 preg_match,如果函数无法获取 IP,你将得到 bool false 结果。

希望能帮助到你。

于 2013-07-25T19:28:58.150 回答
0

这是我在Benz的帮助下完成的编码;)

$ipInfo = dns_get_record('google.co.uk', DNS_A);
$ip = $ipInfo[0]['ip'];

它将文本输出到 $ip 变量。

于 2013-07-25T20:00:19.103 回答