PHP获取在txt文件上定义的本地计算机列表的IP

时间:2013-08-14 15:57:28

标签: php

我正在尝试在一家拥有大量安全性,防火墙,禁用端口等的大型公司上对机器(工作站)进行动态清点。

我在整个房产中看到的唯一可用的是ping的可用性,所以我认为这是寻求解决方案的最佳方式。

我正在考虑从我的Windows工作站执行批处理脚本,但对批处理脚本一无所知会为我的项目添加学习曲线周期。

我的经验是PHP,我知道有一个函数可以调用系统函数。我用google搜索了几个人在从系统函数获取有效输出时遇到问题。

我的具体问题是,你将如何解决这个问题:

  1. 所有机器名称的txt列表
  2. ping availability
  3. php服务器准备就绪并且可以配置,以防我需要关闭安全模式或类似的东西。
  4. 感谢您的反馈。

1 个答案:

答案 0 :(得分:0)

给出.ini格式的文本列表,如下所示:

<强> servers.ini

[servers]
hostnames[]='host1'
hostnames[]='host2'
hostnames[]='host3'
hostnames[]='hostN'

我建议使用PHP内置函数gethostbyname()编写这样的代码:

<?php
// Parse without sections
$servers_array = parse_ini_file("servers.ini");

$results = array();

foreach ($servers_array['hostnames'] as $hostname){
    $ip = gethostbyname($hostname);
    $results[$hostname] = $ip;
}

print_r($results);