[PHP]经常用到的实用函数集合第1/2页

最新打算学习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() ;

当前1/2页 12下一页阅读全文

(0)

相关推荐

  • [PHP]实用函数7

    //打开一个到MySQL服务器的连接.成功返回连接符,失败时返回false int mysql_connect([string server[,string username[,string password]]]) //打开一个到MySQL服务器的持久性连接 int mysql_pconnect([string server[,string username[,string[password]]]) //关闭一个MySQL连接.不影响持久性连接 bool mysql_close([resour

  • [PHP]实用函数6第1/2页

    //寄出电子邮件到指定的邮件地址 to,subject 表示主题,message 为信件内容.额外的选项 additional_headers 可省略,表示其他邮件文档首部 bool mail(string to,string subject,string message,string [additional--headers] //将 URL 字符串予以解析,并将结果返回数组中.返回的数组包括下列元素:scheme.host.port.path.query 与 fragment 等 array

  • PHP实用函数分享之去除多余的0

    代码很简洁,也很简单,就不多废话了. 复制代码 代码如下: /**  * 去除多余的0  */  function del0($s)  {      $s = trim(strval($s));      if (preg_match('#^-?\d+?\.0+$#', $s)) {          return preg_replace('#^(-?\d+?)\.0+$#','$1',$s);      }       if (preg_match('#^-?\d+?\.[0-9]+?0+$

  • [PHP]实用函数5

    //把一个数字的二进制表示形式转化成十六进制 string bin2hex(string tring) //除去字符串结尾处的空格 string rtrim(string string) //rtrim的别名 string chop(string string) //从字符串的两头除去空格 string trim(string string) //从字符串的开头处除去空格 string ltrim(string string) //用字符串 separator 来分割字符串 string 并在数

  • [PHP]实用函数4

    //输出关于PHP和当前请示的信息页面 int phpinfo(void) //返回当前PHP版本号 string phpversion(void) //打印出为本PHP项目做出贡献的人员的清单 string phpcredits(void) //可将 var 转成整数类型.base 是转换的基底,默认值为10.转换的变量 var 可以为数组或类之外的 任何类型变量 int intval(mixed var,int[base]) //获得变量的双精度值 double doubleval(mixe

  • [PHP]实用函数2

    1.产生随机字符串函数 复制代码 代码如下: function random($length) {  $hash = @#@#;  $chars = @#ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz@#;  $max = strlen($chars) - 1;  mt_srand((double)microtime() * 1000000);  for($i = 0; $i < $length; $i++) {   

  • [PHP]实用函数9

    //执行输入 command 的外部程式或外部指令.返回 string 只是外部程式执行后传回的最后一行:若需要完整地返回信息,可以使用 PassThru() string exec(string command,string [array],int [return_var]) //用来执行指令,并输出结果.若是 return_var 参数存在,则执行 command 之后的状态会填入 return_var 中 string system(string command,int [return_v

  • [PHP]实用函数3

    //获得当前的脚本网址 复制代码 代码如下: function get_php_url(){          if(!empty($_server["REQUEST_URI"])){                  $scriptName = $_SERVER["REQUEST_URI"];                  $nowurl = $scriptName;          }else{                  $scriptName =

  • [PHP]实用函数8

    //建立dBase资料表 int dBase_create(string filename,array fields) //打开dBase资料表 int dbase_open(string filename,int flags) //关闭dBase资料表 boolean dbase_close(int dbase_identifier) //清理dBase资料表 bool dbase_pack(int dbase_identifier) //加入记录到dBase资料表 bool dbase_ad

  • [PHP]实用函数10

    //将IP点分地址的字符转化回IP v4格式地址 int ip2long(string ip_address) //将IP v4格式地址转化回IP点分地址的字符串 string long2ip(int proper_address) //取得环境变量 varname,成功则传回变量值,失败由传回false string getenv(string varname) //用来设定系统环境 void putenv(string setting) //获得当前PHP脚本的属主名 string get_

随机推荐