所以我可能很笨,这可能很简单。我有一个文本文件,其中大约有300个域名。我不想用手动操作,所以我正在编写一个简单的php脚本来ping域名,返回ip地址,然后回显它们。
我有一个文本文件中的域,我可以读取该文件并输出名称,但是第二次我试图将它们ping时,我得到的只是一个空白列表
$names = file('sites.txt');foreach ($names as $name) { $ip = gethostbyname($name);echo '‘。$ip。'';} ?>
发布于 2012-06-01 20:58:01
如果您的最终目标是获取ip地址,请查看gethostbyname()。
$names = file('sites.txt');
foreach ($names as $name) {
$ip = gethostbyname($name);
echo '<li>' . $ip. '</li>';
}echo $ip;发布于 2012-06-01 20:58:23
gethostbyname()将返回您输入的任何域的IP地址。http://php.net/manual/en/function.gethostbyname.php
发布于 2013-02-07 16:13:21
@布兰登·布兰纳--这正是我想做的!列表中的最后一个条目之所以有效,是因为PHP正确地读取了行,但在末尾附加了一个字符。这不是最后一句-别问我为什么。也许是新的台词。
要绕过它,请使用substr:
$names = file('mysites.txt');
foreach ($names as $name) {
$mydomain = substr($name, 0, -1);
$ip = gethostbyname($mydomain);
echo '<li>' . $ip . '</li>';
}为我做了个小把戏。然后,您需要做的就是在域列表中添加一个空的最后一行。
https://stackoverflow.com/questions/10857217
复制相似问题