PHP获取本机的局域网(内网…
2013-03-28 21:53
155 查看
原文地址:PHP获取本机的局域网(内网)IP地址(总结)作者:xnzmsjak
function get_local_ip(){
exec("ipconfig /all",$arr);
//运行这句需要修改php.ini文件并重启apache
if (is_array($arr)){
foreach($arr AS $val)
{
//echo
$val."";
if(eregi("IP Address",$val))
$pip = substr($val, strpos($val, ":") + 1);
if
(preg_match ("/192.168.1./", $pip))
//你可以根据需要修改这里的正则表达式
return $pip;
}}}
Exec:
1.
找到php.ini
然后搜索exec,发现disable_function=exec,system,ini_alter….
去掉exec
2.
执行外部程序
3.
string exec ( string $command [, array &$output [,
int &$return_var ]] )
①$command:将要执行的语句;
②$output:如果输出参数存在,那这个数组将包含命令的所有输出行。尾随空白,如n
不报行在内。注意,如果数组中已包含一些元素,exec()会被增加到数组末尾,如果不想在这个函数追加元素,在将数组传给exec()前调用unset();
③$return_var:值为1,说明没运行程序;值为0,说明运行成功。
④返回值:命令结果的最后一行
Foreach:
①遍历给定的
array_expression 数组。每次循环中,当前单元的值被赋给 $value
并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。
②当
foreach 开始执行时,数组内部的指针会自动指向第一个单元。这意味着不需要在 foreach 循环之前调用reset()。
Eregi:
1.
不区分大小写的正则表达式匹配
2.
int eregi ( string $pattern , string $string )
①在$string中寻找与给定的正则表达式$pattern所匹配的子串
②返回值:如果在 string 中找到 pattern 模式的匹配则返回 所匹配字符串的长度,如果没有找到匹配或出错则返回
FALSE
Strops:
1. 查找字符串首次出现的位置($needle在$haystack中首次出现的数字位置)
2. int strpos ( string $haystack ,mixed $needle)
①$haystack:在该字符串中进行查找
②返回值:以整型返回位置信息。如果没找到 needle,strpos() 将返回布尔型的 FALSE 值
Substr:
1. 返回字符串的子串
2. string substr ( string $string , int $start )
①$string:输入字符串
②$start:从$string的$start位置开始,从 0 开始计算
③返回值:返回提取的子字符串, 或者在失败时返回 FALSE
Preg_match:
1. 执行一个正则表达式匹配
2. int preg_match ( string $pattern , string $subject )
①$pattern:要搜索的模式, 字符串类型
②$subject:输入字符串
③返回$pattern 的匹配次数. 它的值将是0次(不匹配)或1次,
因为preg_match()在第一次匹配后将会停止搜索
转载时请说明出处!!
function get_local_ip(){
exec("ipconfig /all",$arr);
//运行这句需要修改php.ini文件并重启apache
if (is_array($arr)){
foreach($arr AS $val)
{
//echo
$val."";
if(eregi("IP Address",$val))
$pip = substr($val, strpos($val, ":") + 1);
if
(preg_match ("/192.168.1./", $pip))
//你可以根据需要修改这里的正则表达式
return $pip;
}}}
Exec:
1.
找到php.ini
然后搜索exec,发现disable_function=exec,system,ini_alter….
去掉exec
2.
执行外部程序
3.
string exec ( string $command [, array &$output [,
int &$return_var ]] )
①$command:将要执行的语句;
②$output:如果输出参数存在,那这个数组将包含命令的所有输出行。尾随空白,如n
不报行在内。注意,如果数组中已包含一些元素,exec()会被增加到数组末尾,如果不想在这个函数追加元素,在将数组传给exec()前调用unset();
③$return_var:值为1,说明没运行程序;值为0,说明运行成功。
④返回值:命令结果的最后一行
Foreach:
1. 遍历数组
2. foreach (array_expression as $value) statement
①遍历给定的
array_expression 数组。每次循环中,当前单元的值被赋给 $value
并且数组内部的指针向前移一步(因此下一次循环中将会得到下一个单元)。
②当
foreach 开始执行时,数组内部的指针会自动指向第一个单元。这意味着不需要在 foreach 循环之前调用reset()。
Eregi:
1.
不区分大小写的正则表达式匹配
2.
int eregi ( string $pattern , string $string )
①在$string中寻找与给定的正则表达式$pattern所匹配的子串
②返回值:如果在 string 中找到 pattern 模式的匹配则返回 所匹配字符串的长度,如果没有找到匹配或出错则返回
FALSE
Strops:
1. 查找字符串首次出现的位置($needle在$haystack中首次出现的数字位置)
2. int strpos ( string $haystack ,mixed $needle)
①$haystack:在该字符串中进行查找
②返回值:以整型返回位置信息。如果没找到 needle,strpos() 将返回布尔型的 FALSE 值
Substr:
1. 返回字符串的子串
2. string substr ( string $string , int $start )
①$string:输入字符串
②$start:从$string的$start位置开始,从 0 开始计算
③返回值:返回提取的子字符串, 或者在失败时返回 FALSE
Preg_match:
1. 执行一个正则表达式匹配
2. int preg_match ( string $pattern , string $subject )
①$pattern:要搜索的模式, 字符串类型
②$subject:输入字符串
③返回$pattern 的匹配次数. 它的值将是0次(不匹配)或1次,
因为preg_match()在第一次匹配后将会停止搜索
转载时请说明出处!!
相关文章推荐
- php获取本机的局域网(内网)IP地址的代码与函数说明
- PHP如何获取内网IP
- PHP 获取内网用户MAC地址(WINDOWS/linux)解决方案
- php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
- PHP 获取内网用户MAC地址(WINDOWS/linux)解决方案
- PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
- 使用PHP在局域网中获取客户端 计算机名 IP地址 MAC地址
- php实现获取局域网所有用户的电脑IP和主机名、及mac地址完整实例
- php获取内网IP
- php获取外网和内网的ip地址
- PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
- java web在内网/局域网中访问,客户端主机ip获取
- 使用PHP在局域网中获取客户端 计算机名 IP地址 MAC地址
- PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
- 远程服务器通过WebRTC获取用户本地局域网(内网) IP地址
- php 获取局域网的 所有用户的电脑IP和主机名、及mac地址
- php 操作mysql 获取select 结果的几种方式
- php 获取客户端的真实IP地址 和 检查客户端从什么地方过来的请求
- DEDE PHP 标签 获取全局 PHP标签获取模板路径cfg_templets_skin
- PHP获取当期前运行文件的路径,名字,服务器路径