使用下面的代码,我已经能够打开一个包含多个域名的.csv
文件,然后将其放入PHP数组并循环遍历。在循环中,我调用一个函数,返回每个域的IP地址(gethostbyname()
)。
然而,当我执行此操作时,我只是将域名回复给我。当我在单个域上使用此功能(即不在循环中)时,我会根据需要获得IP地址。
这里出了什么问题?是否有某种内置限制或我是否构建错误的数组?
<?php
$urls = file('test.csv');
foreach($urls as $url){
$ip = gethostbyname($url);
echo $ip.'<br/>';
}
?>
答案 0 :(得分:1)
file()
将文件的内容作为数组返回,但也包含行末尾的换行符,因此很可能您尝试对google.com\n
之类的内容进行查找。尝试使用
$urls = file('test.csv', FILE_IGNORE_NEW_LINES);
或
foreach($urls as $url) {
$ip = gethostbyname(trim($url)); // note the use of trim()
}