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文件上传类

本文实例为大家分享了php文件上传类,功能很强大,供大家参考,具体内容如下 <?PHP /* *文件上传类 **/ class upfile{ private $fi...

php长字符串定义方法

复制代码 代码如下: <?php $x='<html><body>我很长,如何换行呢?我很长, 如何换行呢?我很长,如何换行呢?我很长, 如何换行呢?我很长...

php实现点击可刷新验证码

本文实例为大家分享了php点击可刷新验证码的具体代码,供大家参考,具体内容如下 验证码类文件 CreateImg.class.php <?php class Va...

php工具型代码之印章抠图

能将白底红字的印章抠出来,用的是php,框架是laravel,其他框架请自行调节。扣其他颜色也可以,把里面的那段rgb参数判断改改就行了,最后抠出来的效果就是白底变透明,然后只留下红色的...

PHP使用header()输出图片缓存实例

本文实例讲述了PHP使用header()输出图片缓存的方法。分享给大家供大家参考。具体分析如下: 在我们生成验证码时会需要直接输入图片,通常会使用到header("Content-typ...