当前位置:首页 > 服务器 > 正文

php获取服务器主机名(php获取服务器ip)

本篇文章给大家谈谈php获取服务器主机名,以及php获取服务器ip对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例

本文所述php实例可以完成获取局域网所有用户的电脑IP和主机名、及mac地址的功能,对于php程序设计人员有一定的参考借鉴价值。完整代码如下:

?php

$bIp

=

gethostbyname($_ENV['COMPUTERNAME']);

//获取本机的局域网IP

echo

"本机IP:",$bIp,"\n";

echo

"本机主机名:",gethostbyaddr($bIp),"\n\n\n";

//gethostbyaddr

函数可以根据局域网IP获取主机名

//默认网关IP

list($ipd1,$ipd2,$ipd3)

=

explode('.',$bIp);

$mask

=

$ipd1

.

"."

.

$ipd2

.

"."

.

$ipd3

;

exec('arp

-a',$aIp);

//获取局域网中的其他IP

foreach(

$aIp

as

$ipv)

{

if(strpos($ipv,'接口')

!==

false)

{//一下显示的IP是否是当前局域网中的

而不是其他的类型

可以在cmd下试一下命令

$bool

=

false;

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)))/',$ipv,$arr);

if(strcmp($arr[0],$bIp)

==

0)

{

$bool

=

true;

}

}

else

{

if($bool)

{

$str

=

preg_replace('/\s+/',

'|',

$ipv);

$sArr

=

explode('|',$str);

if($sArr[1]

==

'Internet'

||

empty($sArr[1]))

{

continue;

}

//去除默认网关

if(strcmp($mask

.

".1",

$sArr[1])

==

0)

{

continue;

}

//去除同网关下255的IP

if(strcmp($mask

.

".255",

$sArr[1])

==

0)

{

continue;

}

//去除组播IP

list($cIp)

=

explode('.',

$sArr[1]);

if($cIp

=

224

$cIp

=

239)

{

continue;

}

echo

"IP地址:|",$sArr[1],"|\n";

echo

"MAC地址:",$sArr[2],"\n";

echo

"主机名:",gethostbyaddr($sArr[1]),"\n";

echo

"\n\n";

}

}

}

该程序是在cli模式下运行的,在浏览器上应该也可以

php获取局域网中的用户ip功能就完成了,主要用到的是php的exec函数

和window的arp

-a

命令

其中获取本机IP:gethostbyname($_ENV['COMPUTERNAME'])

有别于以往的写法,感兴趣的朋友可以继续深入研究一下。

获取主机名函数:gethostbyaddr(IPd)

这个函数功能也很强大。

PHP怎么获取系统信息和服务器详细信息

获取系统类型及版本号: php_uname() (例:Windows NT COMPUTER 5.1 build 2600)

只获取系统类型: php_uname('s') (或:PHP_OS,例:Windows NT)

只获取系统版本号: php_uname('r') (例:5.1)

获取PHP运行方式: php_sapi_name() (PHP run mode:apache2handler)

获取前进程用户名: Get_Current_User()

获取PHP版本: PHP_VERSION

获取Zend版本: Zend_Version()

获取PHP安装路径: DEFAULT_INCLUDE_PATH

获取当前文件绝对路径: __FILE__

获取Http请求中Host值: $_SERVER["HTTP_HOST"] (返回值为域名或IP)

获取服务器IP: GetHostByName($_SERVER['SERVER_NAME'])

接受请求的服务器IP: $_SERVER["SERVER_ADDR"] (有时候获取不到,推荐用:GetHostByName($_SERVER['SERVER_NAME']))

获取客户端IP: $_SERVER['REMOTE_ADDR']

获取服务器解译引擎: $_SERVER['SERVER_SOFTWARE']

获取服务器CPU数量: $_SERVER['PROCESSOR_IDENTIFIER']

获取服务器系统目录: $_SERVER['SystemRoot']

获取服务器域名: $_SERVER['SERVER_NAME'] (建议使用:$_SERVER["HTTP_HOST"])

获取用户域名: $_SERVER['USERDOMAIN']

获取服务器语言: $_SERVER['HTTP_ACCEPT_LANGUAGE']

获取服务器Web端口: $_SERVER['SERVER_PORT']

访问用户的浏览器信息: $_SERVER['HTTP_USER_AGENT'];

script language="JavaScript"

document.write("浏览器名称: "+navigator.appName+"br");

document.write("浏览器版本号: "+navigator.appVersion+"br");

document.write("系统语言: "+navigator.systemLanguage+"br");

document.write("系统平台: "+navigator.platform+"br");

document.write("浏览器是否支持cookie: "+navigator.cookieEnabled+"br");

/script

用php来获得客户端服务器ip的方法

?php

echo

"当前脚本服务器的主机名:".gethostbyaddr($_SERVER['REMOTE_ADDR'])."br

/hr

/";

echo

"获得当前运行PHP脚本(页面)所在的服务器的

IP

地址:".$_SERVER['SERVER_ADDR']."br

/hr

/";

echo

"获得当前运行PHP脚本(页面)所在的服务器的

主机名:".$_SERVER['SERVER_NAME'];

echo

'hr';

echo

'客户端ip'.

$_SERVER['REMOTE_ADDR'];

echo

'br';

echo

'客户端ip'.getenv('REMOTE_ADDR');

echo

"br";

echo

'服务器主机ip'.gethostbyname("");

?

运行出来:

当前脚本服务器的主机名:XYL-PC

获得当前运行PHP脚本(页面)所在的服务器的

IP

地址:127.0.0.1

获得当前运行PHP脚本(页面)所在的服务器的

主机名:localhost

客户端ip127.0.0.1

客户端ip127.0.0.1

服务器主机ip61.135.169.105

php 如何获取服务器的信息

服务器变量 $_SERVER 详解:

1、$_SESSION['PHP_SELF'] — 获取当前正在执行脚本的文件名

2、$_SERVER['SERVER_PROTOCOL'] — 请求页面时通信协议的名称和版本。例如,“HTTP/1.0”。

3、$_SERVER['REQUEST_TIME'] — 请求开始时的时间戳。从 PHP 5.1.0 起有效。和time函数效果一样。

4、$_SERVER['argv'] — 传递给该脚本的参数。我试了下,get方法可以得到$_SERVER['argv'][0];post方法无法给他赋值。

5、$_SERVER['SERVER_NAME'] — 返回当前主机名。

6、$_SERVER['SERVER_SOFTWARE'] — 服务器标识的字串,在响应请求时的头信息中给出。 如Microsoft-IIS/6.0

7、$_SERVER['REQUEST_METHOD'] — 访问页面时的请求方法。例如:“GET”、“HEAD”,“POST”,“PUT”。

8、$_SERVER['QUERY_STRING'] — 查询(query)的字符串(URL 中第一个问号 ? 之后的内容)。

9、$_SERVER['DOCUMENT_ROOT'] — 当前运行脚本所在的文档根目录。在服务器配置文件中定义。 如E:\server

10、$_SERVER['HTTP_ACCEPT'] — 当前请求的 Accept: 头信息的内容。

11、$_SERVER['HTTP_ACCEPT_CHARSET'] — 当前请求的 Accept-Charset: 头信息的内容。例如:“iso-8859-1,*,utf-8”。

12、$_SERVER['HTTP_ACCEPT_ENCODING'] — 当前请求的 Accept-Encoding: 头信息的内容。例如:“gzip”。

13、$_SERVER['HTTP_ACCEPT_LANGUAGE'] — 当前请求的 Accept-Language: 头信息的内容。例如:“en”。

14、$_SERVER['HTTP_CONNECTION'] — 当前请求的 Connection: 头信息的内容。例如:“Keep-Alive”。

15、$_SERVER['HTTP_HOST'] — 当前请求的 Host: 头信息的内容。

16、$_SERVER['HTTP_REFERER'] — 链接到当前页面的前一页面的 URL 地址。

17、$_SERVER['HTTP_USER_AGENT'] — 返回用户使用的浏览器信息。也可以使用 get_browser() 得到此信息。

18、$_SERVER['HTTPS'] — 如果通过https访问,则被设为一个非空的值,否则返回off.

19、$_SERVER['REMOTE_ADDR'] — 正在浏览当前页面用户的 IP 地址。

20、$_SERVER['REMOTE_HOST'] — 正在浏览当前页面用户的主机名。反向域名解析基于该用户的 REMOTE_ADDR。如本地测试返回127.0.0.1

21、$_SERVER['REMOTE_PORT'] — 用户连接到服务器时所使用的端口。我在本机测试没通过,不知道什么原因。

22、$_SERVER['SCRIPT_FILENAME'] — 当前执行脚本的绝对路径名。如返回E:\server\index.php

23、$_SERVER['SERVER_ADMIN'] — 该值指明了 Apache 服务器配置文件中的 SERVER_ADMIN 参数。如果脚本运行在一个虚拟主机上,则该值是那个虚拟主机的值

24、$_SERVER['SERVER_PORT'] — 服务器所使用的端口。默认为“80”。如果使用 SSL 安全连接,则这个值为用户设置的 HTTP 端口。

25、$_SERVER['SERVER_SIGNATURE'] — 包含服务器版本和虚拟主机名的字符串。

26、$_SERVER['PATH_TRANSLATED'] — 当前脚本所在文件系统(不是文档根目录)的基本路径。这是在服务器进行虚拟到真实路径的映像后的结果。 Apache 2 用 户可以使用 httpd.conf 中的 AcceptPathInfo On 来定义 PATH_INFO。

27、$_SERVER['SCRIPT_NAME'] — 包含当前脚本的路径。这在页面需要指向自己时非常有用。__FILE__ 包含当前文件的绝对路径和文件名(例如包含文件)。

28、$_SERVER['REQUEST_URI'] — 访问此页面所需的 URI。例如,“/index.html”。

29、$_SERVER['PHP_AUTH_DIGEST'] — 当作为 Apache 模块运行时,进行 HTTP Digest 认证的过程中,此变量被设置成客户端发送的“Authorization”HTTP 头内容(以便作进一步的认证操作)。

30、$_SERVER['PHP_AUTH_USER']– 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的用户名。

31、$_SERVER['PHP_AUTH_PW'] — 当 PHP 运行在 Apache 或 IIS(PHP 5 是 ISAPI)模块方式下,并且正在使用 HTTP 认证功能,这个变量便是用户输入的密码。

32、$_SERVER['AUTH_TYPE']–当 PHP 运行在 Apache 模块方式下,并且正在使用 HTTP 认证功能,这个变量便是认证的类型。

php怎么获取当前域名的主机名

$_SERVER['SERVER_NAME']可以获取,用phpinfo()可以查看更多的这样的有用变量。

关于php获取服务器主机名和php获取服务器ip的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

取消
扫码支持 支付码