<b>一些常用的php函数</b>

时间:2021-05-28

1.产生随机字符串函数

<?php
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使用有效



<?php
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地址

<?php
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.创建相应的文件夹



<?php
functioncreatedir($dir='')
{
if(!is_dir($dir))
{
$temp=explode('/',$dir);
$cur_dir='';
for($i=0;$i<count($temp);$i++)
{
$cur_dir.=$temp[$i].'/';
if(!is_dir($cur_dir))
{
@mkdir($cur_dir,0777);
}
}
}
}
?>


5.判断邮箱地址



<?php
functioncheckEmail($inAddress)
{
return(ereg("^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+",$inAddress));
}
?>

6.跳转



<?php
functiongotourl($message='',$url='',$title='')
{

$html="<html><head>";
if(!empty($url))
$html.="<metahttp-equiv='refresh'content=\"3;url='".$url."'\">";
$html.="<linkhref='../templates/style.css'type=text/cssrel=stylesheet>";
$html.="</head><body><br><br><br><br>";
$html.="<tablecellspacing='0'cellpadding='0'border='1'width='450'align='center'>";
$html.="<tr><tdbgcolor='#ffffff'>";
$html.="<tableborder='1'cellspacing='1'cellpadding='4'width='100%'>";
$html.="<trclass='m_title'>";
$html.="<td>".$title."</td></tr>";
$html.="<trclass='line_1'><tdalign='center'height='60'>";
$html.="<br>".$message."<br><br>";
if(!empty($url))
$html.="系统将在3秒后返回<br>如果您的浏览器不能自动返回,请点击[<ahref=".$url."target=_self>这里</a>]进入";
else
$html.="[<ahref='#'onclick='history.go(-1)'>返回</a>]";
$html.="</td></tr></table></td></tr></table>";
$html.="</body></html>";
echo$html;
exit;
}
?>


7.分页(两个函数配合使用)



<?php
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="共<fontcolor='red'><b>".$totalpage."</b></font>页&nbsp;&nbsp;";
$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>&nbsp;";
if($start>1)
$out.="<ahref='?page=".$prestart."'title=上一页>..<<</a>&nbsp;";
for($t=$start;$t<=$end;$t++)
{
$out.=($page==$t)?"<fontcolor='red'><b>[".$t."]</b></font>&nbsp;":"<ahref='?page=$t&&".$string."'>$t</a>&nbsp;";
}
if($end<$totalpage)
$out.="<ahref='?page=".$nextend."&&".$string."'title=下一页>>>..</a>";
if($page<>$totalpage)
$out.="&nbsp;<ahref='?page=".$totalpage."&&".$string."'title=最后页>最后页</a>";
return$out;
}

?>

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

相关文章