php一些公用函数的集合

yipeiwu_com6年前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; 
    } 
}

                       

标签: 公用函数

相关文章

用PHP编写和读取XML的几种方式

一.使用DOM生成和读取XML文件 实例一: 复制代码 代码如下: <?php //Creates XML string and XML document using the DO...

php控制文件下载速度的方法

本文实例讲述了php控制文件下载速度的方法。分享给大家供大家参考。具体实现方法如下: <?php /* * set here a limit of download...

PHP四舍五入精确小数位及取整

进一法取整、四舍五入取整、忽略小数等的取整数方法大全 PHP取整数函数常用的四种方法,下面收集了四个函数;经常用到取整的函数,今天小小的总结一下!其实很简单,就是几个函数而已~~主要是:...

PHP基于反射机制实现自动依赖注入的方法详解

本文实例讲述了PHP基于反射机制实现自动依赖注入的方法。分享给大家供大家参考,具体如下: 依赖注入又叫控制反转,使用过框架的人应该都不陌生。很多人一看名字就觉得是非常高大上的东西,就对它...

PHP有序表查找之插值查找算法示例

PHP有序表查找之插值查找算法示例

本文实例讲述了PHP有序表查找之插值查找算法。分享给大家供大家参考,具体如下: 前言: 在前面我们介绍了二分查找,但是我们考虑一下,为什么一定要折半呢?而不是折四分之一或者更多? 打个比...