1、产生随机字符串函数
复制代码 代码如下:
functionrandom($length){
$hash=@#@#;
$chars=@#ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz@#;
$max=strlen($chars)-1;
mt_srand((double)microtime()*1000000);
for($i=0;$i<$length;$i++){
$hash.=$chars[mt_rand(0,$max)];
}
return$hash;
}
2、截取一定长度的字符串(该函数对GB2312使用有效)
复制代码 代码如下:
functionWordscut($string,$length,$sss=0){
if(strlen($string)>$length){
if($sss){
$length=$length-3;
$addstr=@#...@#;
}
for($i=0;$i<$length;$i++){
if(ord($string[$i])>127){
$wordscut.=$string[$i].$string[$i+1];
$i++;
}else{
$wordscut.=$string[$i];
}
}
return$wordscut.$addstr;
}
return$string;
}
3、取得客户端IP地址
复制代码 代码如下:
functionGetIP(){
if(getenv("HTTP_CLIENT_IP")&&strcasecmp(getenv("HTTP_CLIENT_IP"),"unknown"))
$ip=getenv("HTTP_CLIENT_IP");
elseif(getenv("HTTP_X_FORWARDED_FOR")&&strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),"unknown"))
$ip=getenv("HTTP_X_FORWARDED_FOR");
elseif(getenv("REMOTE_ADDR")&&strcasecmp(getenv("REMOTE_ADDR"),"unknown"))
$ip=getenv("REMOTE_ADDR");
elseif(isset($_SERVER[@#REMOTE_ADDR@#])&&$_SERVER[@#REMOTE_ADDR@#]&&strcasecmp($_SERVER[@#REMOTE_ADDR@#],"unknown"))
$ip=$_SERVER[@#REMOTE_ADDR@#];
else
$ip="unknown";
return($ip);
}
4、判断邮箱地址
复制代码 代码如下:
functioncheckEmail($inAddress)
{
return(ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+",$inAddress));
}
5、分页(两个函数配合使用)
复制代码 代码如下:
functiongetpage($sql,$page_size=20)
{
global$page,$totalpage,$sums;//outparam
$page=$_GET["page"];
//$eachpage=$page_size;
$pagesql=strstr($sql,"from");
$pagesql="selectcount(*)asids".$pagesql;
$result=mysql_query($pagesql);
if($rs=mysql_fetch_array($result))$sums=$rs[0];
$totalpage=ceil($sums/$page_size);
if((!$page)($page<1))$page=1;
$startpos=($page-1)*$page_size;
$sql.="limit$startpos,$page_size";
return$sql;
}
functionshowbar($string="")
{
global$page,$totalpage;
$out="共".$totalpage."页";
$linkNum=4;
$start=($page-round($linkNum/2))>0?($page-round($linkNum/2)):"1";
$end=($page+round($linkNum/2))<$totalpage?($page+round($linkNum/2)):$totalpage;
$prestart=$start-1;
$nextend=$end+1;
if($page<>1)
$out.="
if($start>1)
$out.="
for($t=$start;$t<=$end;$t++)
{
$out.=($page==$t)?"[".$t."]":"$t";
}
if($end<$totalpage)
$out.="
if($page<>$totalpage)
$out.="
return$out;
}
6、获取新插入数据的ID
复制代码 代码如下:
mysql_insert_id();
?>