下面以调用 fping 为例
安装 fping
cd /usr/local/src
wget /dist/fping-3.10.tar.gz
tar -xvf fping-3.10.tar.gz
cd fping-3.10
./configure
make && make install
增加权限
fping 一般安装在/usr/local/sbin/ 目录下
增加权限
chown root:root /usr/local/sbin/fping
chmod u+s /usr/local/sbin/fping
php调用
foreach( $list as $key => &$val ){
//$val[ 'ip' ]
$status_arr = '';//这里一定要清空,不然$status_arr 会一直往后插入新的数据
exec( 'fping -r0 -t500 ' . $val[ 'ip' ] . ' 2>&1', $status_arr ); //一定要把错误输出到标准输出,否则没有返回值
if( isset( $status_arr[ 0 ] ) && preg_match( '/is alive/', $status_arr[ 0 ] ) ){
$val[ 'status' ] = 1;
}else{
$val['status' ] = 0;
}
}