1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > PHP跨平台获取服务器IP地址自定义函数分享

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

时间:2023-01-20 16:16:58

相关推荐

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

php教程|php手册

PHP,跨平台,获取服务器IP地址,自定义函数

php教程-php手册

android开发项目源码,ubuntu烧录工具,访问tomcat 空白页,爬虫分析论文,达内培训 学校机构php,重庆合川短视频关键词seolzw

这篇文章主要介绍了PHP跨平台获取服务器IP地址自定义函数分享,本文函数会根据系统类型选择不同的命令来获取服务器的IP地址,需要的朋友可以参考下

数字报 源码,ubuntu系统自删,tomcat插件起动的不同,爬虫所有headers,php软件学习课程外包,amp seolzw

读网页源码,vscode集成终端无法启动,ubuntu usb驱动,tomcat删除root,sqlite .pas,web静态网页设计,php 判断数据库有没有,网站主机和服务器的区别,js 图片旋转插件,ue前端框架,编辑爬虫,php 数组倒序,乌海SEO,springboot流程审核,网站标签span,java web网站源码,网页首页模板免费下载,dz手机模板安装教程,wdcp后台密码忘记,导航栏切换页面,java 手机信息管理系统照相功能,qt应用程序开发实例lzw

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

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

复制代码 代码如下:

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|((1\d{2})|([1-9]?\d)))\.){3}(?:25[0-5]|2[0-4]\d|((1\d{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;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。