|  2009-09-19, 01:06 PM | #1 | 
	| 
				 
				注册日期: 2003-10-22 
					帖子: 11,054
				 积分:6 精华:24 现金:14351金币 资产:1282954938金币       | 
				
				使用频率比较高的php函数
			 
 
		
			
			
			1.产生随机字符串函数 
	PHP 代码: 
		
			
function random($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 代码: 
		
			
function wordscut($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 代码: 
		
			
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);
 }
 
 4.创建相应的文件夹
 
	PHP 代码: 
		
			
function createdir($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 代码: 
		
			
function checkEmail($inAddress){
 return (ereg(”^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(\.[a-zA-Z0-9_-])+”,$inAddress));
 }
 
 6.跳转
 
	PHP 代码: 
		
			
function gotourl($message=”,$url=”,$title=”){
 $html  =”<html><head>”;
 if(!empty($url))
 $html .=”<meta http-equiv=’refresh’ content=\”3;url=’”.$url.”‘\”>”;
 $html .=”<link href=’../templates/style.css’ type=text/css rel=stylesheet>”;
 $html .=”</head><body><br><br><br><br>”;
 $html .=”<table cellspacing=’0′ cellpadding=’0′ border=’1′ width=’450′ align=’center’>”;
 $html .=”<tr><td bgcolor=’#ffffff’>”;
 $html .=”<table border=’1′ cellspacing=’1′ cellpadding=’4′ width=’100%’>”;
 $html .=”<tr class=’m_title’>”;
 $html .=”<td>”.$title.”</td></tr>”;
 $html .=”<tr class=’line_1′><td align=’center’ height=’60′>”;
 $html .=”<br>”.$message.”<br><br>”;
 if (!empty($url))
 $html .=”系统将在3秒后返回<br>如果您的浏览器不能自动返回,请点击[<a href=".$url." target=_self>这里</a>]进入”;
 else
 $html .=”[<a href='#' onclick='history.go(-1)'>返回</a>]“;
 $html .=”</td></tr></table></td></tr></table>”;
 $html .=”</body></html>”;
 echo $html;
 exit;
 }
 
 7.分页(两个函数配合使用)
 
	PHP 代码: 
		
			
function getpage($sql,$page_size=20){
 global $page,$totalpage,$sums;  //out param
 $page = $_GET["page"];
 //$eachpage = $page_size;
 $pagesql = strstr($sql,” from “);
 $pagesql = “select count(*) as ids “.$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;
 }
 function showbar($string=”")
 {
 global $page,$totalpage;
 $out=”共<font 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 .= “<a href=’?page=1&&”.$string.”‘title=第一页>第一页</a> ”;
 if($start>1)
 $out.=”<a href=’?page=”.$prestart.”‘ title=>..<<</a> ”;
 for($t=$start;$t<=$end;$t++)
 {
 $out .= ($page==$t) ? “<font color=’red’><b>[".$t."]</b></font> ” : “<a href=’?page=$t&&”.$string.”‘>$t</a> ”;
 }
 if($end<$totalpage)
 $out.=”<a href=’?page=”.$nextend.”&&”.$string.”‘ title=>>>..</a>”;
 if($page<>$totalpage)
 $out .= “ <a href=’?page=”.$totalpage.”&&”.$string.”‘ title=最后页>最后页</a>”;
 return $out;
 }
 ?>
 
 | 
|  | 
	|   |   |