php一些公用函数的集合

yipeiwu_com5年前PHP代码库

/*获得客户端ip地址*/
   

 function getIP() { 
        if(getenv("HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown")) { 
                $ip = getenv("HTTP_CLIENT_IP"); 
        } 
        else if(getenv("HTTP_X_FORWARDED_FOR") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown")) { 
                $ip = getenv("HTTP_X_FORWARDED_FOR"); 
        } 
        else if(getenv("REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"),"unknown")) { 
                $ip = getenv("REMOTE_ADDR"); 
        } 
        else if(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],"unknown")) { 
                $ip = $_SERVER['REMOTE_ADDR']; 
        } 
        else { 
                $ip = "unknown"; 
        } 

        return($ip); 
}
/*验证IP地址函数*/ 
function checkIP($ip) { 
        return preg_match((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?); 
} 

/*用户输入内容过滤函数*/ 
function getStr($str) { 
    $tmpstr = trim($str); 
    $tmpstr = strip_tags($tmpstr); 
    $tmpstr = htmlspecialchars($tmpstr); 

    /*加入字符转义*/ 
    $tmpstr = addslashes($tmpstr); 

    return $tmpstr; 
} 

/*容量大小计算函数*/ 
function sizecount($filesize) { 
        if($filesize >= 1073741824) { 
                $filesize = round($filesize / 1073741824 * 100) / 100 . ' G'; 
        } elseif($filesize >= 1048576) { 
                $filesize = round($filesize / 1048576 * 100) / 100 . ' M'; 
        } elseif($filesize >= 1024) { 
                $filesize = round($filesize / 1024 * 100) / 100 . ' K'; 
        } else { 
                $filesize = $filesize . ' bytes'; 
        } 
        return $filesize; 
} 

/*简单防SQL注入函数*/ 
function getSQL($feild) { 
    $tmpfeild = mysql_escape_string($feild); 

    return $tmpfeild; 
} 
/*$num必须为英文字符或数字0-9*/ 
function getNums($num) { 
    return (ctype_alnum($num)); 
} 

/*$char必须为英文字符*/ 
function getChar($char) { 
    return (ctype_alpha($char)); 
} 
/*匹配qq(5-12)位*/ 
function getQQ($qq) { 
    return preg_match("/^\b[0-9]{5,12}\b/",$qq); 
} 
/*匹配电子邮件地址*/ 
function getEmail($email) { 
    return strlen($email)>6 && preg_match("/^\w+@(\w+\.)+[com]|[cn]$/" , $email); 
// preg_match("/^[\w\-\.]+@[\w\-\.]+(\.\w+)+$/",$email); 
} 

/*生成email连接*/ 
function emailconv($email,$tolink=1) { 
        $email=str_replace(array('@','.'),array('@','.'),$email); 
        return $tolink ? '<a href="mailto: '.$email.'">'.$email.'</a>':$email; 
} 

/*检查ip是否被允许访问*/ 
function ipaccess($ip,$accesslist) { 
        return preg_match("/^(".str_replace(array("\r\n",' '),array('|',''),preg_quote($accesslist,'/')).")/",$ip); 
} 

/*若标题过长,此函数可显示前几个字符,剩余字符用...代替*/ 
function cutstr($string, $length) { 
    if(strlen($string) > $length) { 
        for($i = 0; $i < $length - 3; $i++) { 
                   /*返回字符的序数值*/ 
            $strcut .= ord($string[$i]) > 127 ? $string[$i].$string[++$i] : $string[$i]; 
        } 
        return $strcut.' ...'; 
    } else { 
        return $string; 
    } 
}

                       

标签: 公用函数

相关文章

Yii中render和renderPartial的区别

以下由我们在信易网络公司开发项目的时候终结出的一些经验 在进行页面输出渲染的时候。 1.render 输出父模板的内容,将渲染的内容,嵌入父模板。| 2.renderPartial 则不...

php中将一个对象保存到Session中的方法

本文实例讲述了php中将一个对象保存到Session中的方法。分享给大家供大家参考。具体如下: 要保存对象到session其实很简单,我们可以使用session_register()函数...

php通过asort()给关联数组按照值排序的方法

本文实例讲述了php通过asort()给关联数组按照值排序的方法。分享给大家供大家参考。具体分析如下: php通过asort()给关联数组按照值排序,和sort的区别是,sort为数组中...

QueryPath PHP 中的jQuery

官方主页  http://querypath.org/ QP API 手册  http://api.querypath.org/docs/ QueryPath(QP...

PHP将两个关联数组合并函数提高函数效率

在foreach中循环查询数据代码量比较少,但是性能比较低,好点的解决办法是将id收集起来,用in一次性查询,但是这引发了数据结构不是我们用PHP自带的函数可以合并的,今天测试了一下:...