博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php 调用 系统命令
阅读量:5923 次
发布时间:2019-06-19

本文共 960 字,大约阅读时间需要 3 分钟。

hot3.png

环境是 lnmp 

首先要修改 php.ini 中的 disable_functions 在里面把你需要使用的函数( system,exec ...)之类的注释掉。

 

下面以调用 fping  为例

安装 fping 

cd /usr/local/src

wget http://fping.org/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 会一直往后插入新的数据    //理论上可以但是实际上可能会报错 Array ( [0] => sh: line 1: fping: command not found )    exec( 'fping -r0 -t500 ' . $val[ 'ip' ] . ' 2>&1', $status_arr ); //一定要把错误输出到标准输出,否则没有返回值    //这个时候需要用完整的fping路径     exec( '/usr/local/sbin/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;    }}

 

转载于:https://my.oschina.net/waterPlants/blog/1559348

你可能感兴趣的文章
win server 2008 R2 安装IIS
查看>>
发送get和post请求时常用的content-type
查看>>
docker 9 docker的容器命令
查看>>
希尔排序
查看>>
MVC3 新建项目
查看>>
oracle常用操作
查看>>
@Autowired 与@Resource的区别(详细)
查看>>
transition过渡规定慢速开始,然后变快,然后慢速结束的过渡效果(cubic-bezier(0.25,0.1,0.25,1))。...
查看>>
java知识点——javaweb开发工具安装
查看>>
2016弱校联萌十一专场10.5
查看>>
2017年7月
查看>>
JavaScript高级程序设计(第2版)笔记 概要
查看>>
常用样式总结
查看>>
awrcrt更新到2.1(重大更新)
查看>>
idea and projects
查看>>
备忘-Android ViewPager 子页监听事件
查看>>
【数据压缩】LZ77算法原理及实现
查看>>
各种排序算法
查看>>
excel小技巧
查看>>
CSS 定位
查看>>