[PHP]经常用到的实用函数集合第12页

2018-09-07 14:42

阅读:337

  最新打算学习php,发现好多函数需要用到,可自己写又麻烦,于是找了下php的常用函数,从各大php系统中弄下来的,绝对是使用的php实用函数
复制代码 代码如下:
functionGetIP(){//获取IP
if($_SERVER[HTTP_X_FORWARDED_FOR])
$ip=$_SERVER[HTTP_X_FORWARDED_FOR];
elseif($_SERVER[HTTP_CLIENT_IP])
$ip=$_SERVER[HTTP_CLIENT_IP];
elseif($_SERVER[REMOTE_ADDR])
$ip=$_SERVER[REMOTE_ADDR];
elseif(getenv(HTTP_X_FORWARDED_FOR))
$ip=getenv(HTTP_X_FORWARDED_FOR);
elseif(getenv(HTTP_CLIENT_IP))
$ip=getenv(HTTP_CLIENT_IP);
elseif(getenv(REMOTE_ADDR))
$ip=getenv(REMOTE_ADDR);
else
$ip=Unknown;
return$ip;
}

functionDateAdd($date,$int,$unit=d){//时间的增加(还可以改进成时分秒都可以增加,有时间再补上)
$dateArr=explode(-,$date);
$value[$unit]=$int;
returndate(Y-m-d,mktime(0,0,0,$dateArr[1]+$value[m],$dateArr[2]+$value[d],$dateArr[0]+$value[y]));
}

functionGetWeekDay($date){//计算出给出的日期是星期几
$dateArr=explode(-,$date);
returndate(w,mktime(0,0,0,$dateArr[1],$dateArr[2],$dateArr[0]));
}

复制代码 代码如下:
functioncheck_date($date){//检查日期是否合法日期
$dateArr=explode(-,$date);
if(is_numeric($dateArr[0])&&is_numeric($dateArr[1])&&is_numeric($dateArr[2])){
returncheckdate($dateArr[1],$dateArr[2],$dateArr[0]);
}
returnfalse;
}
functioncheck_time($time){//检查时间是否合法时间
$timeArr=explode(:,$time);
if(is_numeric($timeArr[0])&&is_numeric($timeArr[1])&&is_numeric($timeArr[2])){
if(($timeArr[0]>=0&&$timeArr[0]<=23)&&($timeArr[1]>=0&&$timeArr[1]<=59)&&($timeArr[2]>=0&&$timeArr[2]<=59))
returntrue;
else
returnfalse;
}
returnfalse;
}

functionDateDiff($date1,$date2,$unit=){//时间比较函数,返回两个日期相差几秒、几分钟、几小时或几天
switch($unit){
cases:
$dividend=1;
break;
casei:
$dividend=60;
break;
caseh:
$dividend=3600;
break;
cased:
$dividend=86400;
break;
default:
$dividend=86400;
}
$time1=strtotime($date1);
$time2=strtotime($date2);
if($time1&&$time2)
return(float)($time1-$time2)/$dividend;
returnfalse;
}

复制代码 代码如下:
functionget_innerhtml($html,$label){//获取一对html标记间的html字符串
$result_arr=preg_split(/<\/.$label.>/i,$html);
$pattern=/<.$label..*?>/i;
for($i=0;$i<count($result_arr);$i++){
list($left,$right)=preg_split($pattern,$result_arr[$i],2);
$result_arr[$i]=$right;
}
return$result_arr;
}
//例:echoget_innerhtml(<tr><tdheight=20>something</td></tr>,td);//willprintsomething.

functionget_input_value($input){//获取Input的HTML代码中的Value值
$pos=stripos($input,value=)+6;
if($pos!==false){
$input=substr($input,$pos);
if(substr($input,0,1)==\)
returnsubstr($input,1,strpos($input,\,1)-1);
else
returnsubstr($input,0,strpos($input,)-1);
}
returnfalse;
}

functiongetcontentbetween($a,$b,$str){//获取字符串$str中,字符串$a与字符串$b之间的字符串
if($str!==&&$a!==&&$b!==){
$start=strpos($str,$a)+strlen($a);
returnsubstr($str,$start,strpos($str,$b,$start+1)-$start);
}
returnfalse;
}


1、关于PHP重定向
复制代码 代码如下:
方法一:header(Location:index.php);
方法二:echo<scrīpt>window.location=$PHP_SELF;</scrīpt>;
方法三:echo<METAHTTP-EQUIV=RefreshCONTENT=0;URL=index.php>;

2、获取访问者浏览器
复制代码 代码如下:
functionbrowse_infor()
{
$browser=;$browserver=;
$Browsers=array(Lynx,MOSAIC,AOL,Opera,JAVA,MacWeb,WebExplorer,OmniWeb);
$Agent=$GLOBALS[HTTP_USER_AGENT];
for($i=0;$i<=7;$i++)
{
if(strpos($Agent,$Browsers[$i]))
{
$browser=$Browsers[$i];
$browserver=;
}
}
if(ereg(Mozilla,$Agent)&&!ereg(MSIE,$Agent))
{
$temp=explode((,$Agent);$Part=$temp[0];
$temp=explode(/,$Part);$browserver=$temp[1];
$temp=explode(,$browserver);$browserver=$temp[0];
$browserver=preg_replace(/([d.]+)/,1,$browserver);
$browserver=$browserver;
$browser=NetscapeNavigator;
}
if(ereg(Mozilla,$Agent)&&ereg(Opera,$Agent))
{
$temp=explode((,$Agent);$Part=$temp[1];
$temp=explode(),$Part);$browserver=$temp[1];
$temp=explode(,$browserver);$browserver=$temp[2];
$browserver=preg_replace(/([d.]+)/,1,$browserver);
$browserver=$browserver;
$browser=Opera;
}
if(ereg(Mozilla,$Agent)&&ereg(MSIE,$Agent))
{
$temp=explode((,$Agent);$Part=$temp[1];
$temp=explode(;,$Part);$Part=$temp[1];
$temp=explode(,$Part);$browserver=$temp[2];
$browserver=preg_replace(/([d.]+)/,1,$browserver);
$browserver=$browserver;
$browser=InternetExplorer;
}
if($browser!=)
{
$browseinfo=$browser$browserver;
}
else
{
$browseinfo=Unknown;
}
return$browseinfo;
}
//调用方法$browser=browseinfo();直接返回结果

3、获取访问者操作系统
复制代码 代码如下:
functionosinfo(){
$os=;
$Agent=$GLOBALS[HTTP_USER_AGENT];
if(eregi(win,$Agent)&&strpos($Agent,95)){
$os=Windows95;
}
elseif(eregi(win9x,$Agent)&&strpos($Agent,4.90)){
$os=WindowsME;
}
elseif(eregi(win,$Agent)&&ereg(98,$Agent)){
$os=Windows98;
}
elseif(eregi(win,$Agent)&&eregi(nt5.0,$Agent)){
$os=Windows2000;
}
elseif(eregi(win,$Agent)&&eregi(nt,$Agent)){
$os=WindowsNT;
}
elseif(eregi(win,$Agent)&&eregi(nt5.1,$Agent)){
$os=WindowsXP;
}
elseif(eregi(win,$Agent)&&ereg(32,$Agent)){
$os=Windows32;
}
elseif(eregi(linux,$Agent)){
$os=Linux;
}
elseif(eregi(unix,$Agent)){
$os=Unix;
}
elseif(eregi(sun,$Agent)&&eregi(os,$Agent)){
$os=SunOS;
}
elseif(eregi(ibm,$Agent)&&eregi(os,$Agent)){
$os=IBMOS/2;
}
elseif(eregi(Mac,$Agent)&&eregi(PC,$Agent)){
$os=Macintosh;
}
elseif(eregi(PowerPC,$Agent)){
$os=PowerPC;
}
elseif(eregi(AIX,$Agent)){
$os=AIX;
}
elseif(eregi(HPUX,$Agent)){
$os=HPUX;
}
elseif(eregi(NetBSD,$Agent)){
$os=NetBSD;
}
elseif(eregi(BSD,$Agent)){
$os=BSD;
}
elseif(ereg(OSF1,$Agent)){
$os=OSF1;
}
elseif(ereg(IRIX,$Agent)){
$os=IRIX;
}
elseif(eregi(FreeBSD,$Agent)){
$os=FreeBSD;
}
if($os==)$os=Unknown;
return$os;
}
//调用方法$os=os_infor();

12下一页阅读全文


评论


亲,登录后才可以留言!