加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP编程:PHP跨平台获取服务器IP地址自定义函数分享

发布时间:2020-12-13 02:18:25 所属栏目:PHP教程 来源:网络整理
导读:《PHP跨平台获取服务器IP地址自定义函数分享》要点: 本文介绍了PHP跨平台获取服务器IP地址自定义函数分享,希望对您有用。如果有疑问,可以联系我们。 近期必要完善一个log机制,监控来自不同服务器的机器的脚本执行状况,特针对windows和Linux及web与命令行

《PHP跨平台获取服务器IP地址自定义函数分享》要点:
本文介绍了PHP跨平台获取服务器IP地址自定义函数分享,希望对您有用。如果有疑问,可以联系我们。

近期必要完善一个log机制,监控来自不同服务器的机器的脚本执行状况,特针对windows和Linux及web与命令行模式书写了一个函数来兼容.PHP教程

写了如下一个function来,可以实现上面的需求:PHP教程

代码如下:

function getServerAddr() {??
??? //运行 web app??
??? if (isset($_SERVER["SERVER_ADDR"])) {??
??????? return $_SERVER["SERVER_ADDR"];??
??? } else { // Running CLI??
??????? if (stristr(PHP_OS,'WIN')) {??
??????????? //? 针对windows服务器所执行的一种hacky方式???
??????????? exec("ipconfig /all",$catch);??
??????????? foreach ($catch as $line) {??
??????????????? $new_catch[] = iconv("gbk","utf-8",$line) . "n";??
??????????? }??
??????????? foreach ($new_catch as $new_line) {??
??????????????? if (preg_match(‘/IPv4 地址/',$new_line)) { //中文体系??
??????????????????? list($t,$ip) = explode(‘:',$new_line);??
??????????????????? $ip = trim($ip);??
??????????????????? preg_match(‘/((?:(?:25[0-5]|2[0-4]d|((1d{2})|([1-9]?d))).){3}(?:25[0-5]|2[0-4]d|((1d{2})|([1-9]?d))))/',$ip,$match);??
??????????????????? return $match[1];??
??????????????? }??
??????????? }??
??????? } else {??
??????????? $ifconfig = shell_exec(‘/sbin/ifconfig eth0′);??
??????????? preg_match(‘/addr:([d.]+)/',$ifconfig,$match);??
??????????? return $match[1];??
??????? }??
??? }??
}??
?
$ip = getServerAddr();??
print $ip;

《PHP跨平台获取服务器IP地址自定义函数分享》是否对您有启发,欢迎查看更多与《PHP跨平台获取服务器IP地址自定义函数分享》相关教程,学精学透。编程之家 52php.cn为您提供精彩教程。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读