[PHP]实用函数2

时间:2021-05-28

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="共<font".$totalpage."color=@#red@#><b>".$totalpage."</b></font>页";
$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.="<ahref=@#?page=1&&".$string."@#title=第一页>第一页</a>";
if($start>1)
$out.="<ahref=@#?page=".$prestart."@#title=上一页>..<<</a>";

for($t=$start;$t<=$end;$t++)
{
$out.=($page==$t)?"<font[".$t."]color=@#red@#><b>[".$t."]</b></font>":"<a$thref=@#?page=$t&&".$string."@#>$t</a>";
}
if($end<$totalpage)
$out.="<ahref=@#?page=".$nextend."&&".$string."@#title=下一页>>>..</a>";
if($page<>$totalpage)
$out.="<ahref=@#?page=".$totalpage."&&".$string."@#title=最后页>最后页</a>";
return$out;
}

6、获取新插入数据的ID
复制代码 代码如下:
<?
mysql_insert_id();
?>

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章