[PHP]经常用到的实用函数集合 |
本文标签:[PHP]经常用到的实用函数集合 最新打算学习php,发现好多函数需要用到,可自己写又麻烦,于是找了下php的常用函数,从各大php系统中弄下来的,绝对是使用的php实用函数 复制代码 代码如下: function GetIP() { //获取IP if ($_SERVER["HTTP_X_FORWARDED_FOR"]) $ip = $_SERVER["HTTP_X_FORWARDED_FOR"]; else if ($_SERVER["HTTP_CLIENT_IP"]) $ip = $_SERVER["HTTP_CLIENT_IP"]; else if ($_SERVER["REMOTE_ADDR"]) $ip = $_SERVER["REMOTE_ADDR"]; else if (getenv("HTTP_X_FORWARDED_FOR")) $ip = getenv("HTTP_X_FORWARDED_FOR"); else if (getenv("HTTP_CLIENT_IP")) $ip = getenv("HTTP_CLIENT_IP"); else if (getenv("REMOTE_ADDR")) $ip = getenv("REMOTE_ADDR"); else $ip = "Unknown"; return $ip; } function DateAdd($date, $int, $unit = "d") { //时间的增加(还可以改进成时分秒都可以增加,有时间再补上) $dateArr = explode("-", $date); $value[$unit] = $int; return date("Y-m-d", mktime(0,0,0, $dateArr[1] + $value[m], $dateArr[2] + $value[d], $dateArr[0] + $value[y])); } function GetWeekDay($date) { //计算出给出的日期是星期几 $dateArr = explode("-", $date); return date("w", mktime(0,0,0,$dateArr[1],$dateArr[2],$dateArr[0])); } 复制代码 代码如下: function check_date($date) { //检查日期是否合法日期 $dateArr = explode("-", $date); if (is_numeric($dateArr[0]) && is_numeric($dateArr[1]) && is_numeric($dateArr[2])) { return checkdate($dateArr[1],$dateArr[2],$dateArr[0]); } return false; } function check_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)) return true; else return false; } return false; } function DateDiff($date1, $date2, $unit = "") { //时间比较函数,返回两个日期相差几秒、几分钟、几小时或几天 switch ($unit) { case s: $dividend = 1; break; case i: $dividend = 60; break; case h: $dividend = 3600; break; case d: $dividend = 86400; break; default: $dividend = 86400; } $time1 = strtotime($date1); $time2 = strtotime($date2); if ($time1 && $time2) return (float)($time1 - $time2) / $dividend; return false; } 复制代码 代码如下: function get_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; } //例: echo get_innerhtml("<tr><td height=20>something</td></tr>", "td"); //will print "something". function get_input_value($input) { //获取Input的HTML代码中的Value值 $pos = stripos($input, "value=") + 6; if ($pos !== false) { $input = substr($input, $pos); if (substr($input, 0, 1) == "\"") return substr($input, 1, strpos($input, "\"", 1) - 1); else return substr($input, 0, strpos($input, " ") - 1); } return false; } function getcontentbetween($a, $b, $str) { //获取字符串$str中,字符串$a与字符串$b之间的字符串 if ($str!=="" && $a!=="" && $b!=="") { $start = strpos($str, $a) + strlen($a); return substr($str, $start, strpos($str, $b, $start + 1) - $start); } return false; } 1、关于PHP重定向 复制代码 代码如下: 方法一:header("Location: index.php"); 方法二:echo "<scrīpt>window.location ="$PHP_SELF";</scrīpt>"; 方法三:echo "<META HTTP-EQUIV="Refresh" CONTENT="0; URL=index.php">"; 2、获取访问者浏览器 复制代码 代码如下: function browse_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 = "Netscape Navigator"; } 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 = "Internet Explorer"; } if ($browser!="") { $browseinfo = "$browser$browserver"; } else { $browseinfo = "Unknown"; } return $browseinfo; } //调用方法$browser=browseinfo() ;直接返回结果 3、获取访问者操作系统 复制代码 代码如下: function osinfo() { $os=""; $Agent = $GLOBALS["HTTP_USER_AGENT"]; if (eregi(win,$Agent) && strpos($Agent, 95)) { $os="Windows 95"; } elseif (eregi(win 9x,$Agent) && strpos($Agent, 4.90)) { $os="Windows ME"; } elseif (eregi(win,$Agent) && ereg(98,$Agent)) { $os="Windows 98"; } elseif (eregi(win,$Agent) && eregi(nt 5.0,$Agent)) { $os="Windows 2000"; } elseif (eregi(win,$Agent) && eregi(nt,$Agent)) { $os="Windows NT"; } elseif (eregi(win,$Agent) && eregi(nt 5.1,$Agent)) { $os="Windows XP"; } elseif (eregi(win,$Agent) && ereg(32,$Agent)) { $os="Windows 32"; } 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="IBM OS/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() ; |