ฟังก์ชัน PHP บางส่วนที่ใช้บ่อย
ผู้เขียน:Eve Cole
เวลาอัปเดต:2009-06-05 16:25:00
ในการพัฒนา PHP เรามักจะพบกับฟังก์ชันบางอย่างต่อไปนี้ถูกจัดระเบียบและสามารถนำมาใช้โดยตรงเพื่ออำนวยความสะดวกในการพัฒนาประสิทธิภาพได้ อย่างไรก็ตาม ขอแนะนำให้คุณทำความเข้าใจฟังก์ชันเหล่านี้ก่อน จากนั้นจึงเพิ่มฟังก์ชันบนพื้นฐานนี้เพื่อปรับปรุงความสามารถของคุณเอง
1. สร้างฟังก์ชันสตริงสุ่ม
ฟังก์ชั่นสุ่ม($ความยาว) {
$แฮช = @#@#;
$chars = @#abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz@#;
$สูงสุด = strlen($ตัวอักษร) - 1;
mt_srand((สองเท่า)ไมโครไทม์() * 1000000);
สำหรับ($i = 0; $i < $ความยาว; $i++) {
$hash .= $chars[mt_rand(0, $max)];
-
ส่งคืน $ แฮช;
-
2. ตัดสตริงที่มีความยาวที่กำหนด หมายเหตุ: ฟังก์ชันนี้ใช้ได้กับ gb2312
ฟังก์ชั่น wordcut($string, $length,$sss=0) {
ถ้า(strlen($string) > $length) {
ถ้า($sss){
$ความยาว=$ความยาว - 3;
$addstr=@# ...@#;
-
สำหรับ($i = 0; $i < $ความยาว; $i++) {
ถ้า(อ๊อด($string[$i]) > 127) {
$wordscut .= $string[$i].$string[$i + 1];
$i++;
} อื่น {
$wordscut .= $string[$i];
-
-
กลับ $wordscut.$addstr;
-
ส่งคืน $string;
-
3. รับที่อยู่ IP ของลูกค้า
ฟังก์ชั่น getip(){
ถ้า (getenv("http_client_ip") && strcasecmp(getenv("http_client_ip"), "ไม่ทราบ"))
$ip = getenv("http_client_ip");
อย่างอื่นถ้า (getenv("http_x_forwarded_for") && strcasecmp(getenv("http_x_forwarded_for"), "ไม่ทราบ")
$ip = getenv("http_x_forwarded_for");
อย่างอื่นถ้า (getenv("remote_addr") && strcasecmp(getenv("remote_addr"), "ไม่ทราบ")
$ip = getenv("remote_addr");
อย่างอื่นถ้า (isset($_server[@#remote_addr@#]) && $_server[@#remote_addr@#] && strcasecmp($_server[@#remote_addr@#], "ไม่ทราบ"))
$ip = $_เซิร์ฟเวอร์[@#remote_addr@#];
อื่น
$ip = "ไม่ทราบ";
กลับ($ip);
-
4.สร้างโฟลเดอร์ที่เกี่ยวข้อง
ฟังก์ชั่น createir($dir=@#@#)
-
ถ้า (!is_dir($dir))
-
$temp = ระเบิด(@#/@#,$dir);
$cur_dir = @#@#;
สำหรับ($i=0;$i<นับ($ชั่วคราว);$i++)
-
$cur_dir .= $temp[$i].@#/@#;
ถ้า (!is_dir($cur_dir))
-
@mkdir($cur_dir,0777);
-
-
-
-
5. กำหนดที่อยู่อีเมล
ฟังก์ชั่น เช็คอีเมล์($inaddress)
-
กลับ (ereg("^([a-za-z0-9_-])+@([a-za-z0-9_-])+(.[a-za-z0-9_-])+", $inaddress));
-
6.กระโดด
ฟังก์ชั่น gotourl( $message=@#@#,$url=@#@#,$title =@#@#)
-
$html="<html><head>";
ถ้า(!ว่างเปล่า($url))
$html .="< metahttp-equiv=@#refresh @# content="3;url=@#".$url."@#">";
$html .="< linkhref=@#../templates/style.css @# type=text/css rel=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>";
ถ้า (!ว่าง($url))
$html .="ระบบจะกลับมาภายใน 3 วินาที<br>หากเบราว์เซอร์ของคุณไม่สามารถกลับมาโดยอัตโนมัติ โปรดคลิก [<a href=".$url" target=_self>ที่นี่</a>] เพื่อเข้าสู่";
อื่น
$html .="[ <a href=@##@#=@#history.go(-1 )@#> กลับ</a>]";
$html .="</td></tr></table></td></tr></table>";
$html .="</body></html>";
เสียงสะท้อน $html;
ออก;
-
7. เพจจิ้ง (ใช้สองฟังก์ชันร่วมกัน)
ฟังก์ชั่น getpage($sql,$page_size=20)
-
$page ทั่วโลก,$totalpage,$sums;
$page = $_get["หน้า"];
//$eachpage = $page_size;
$pagesql = strstr($sql," จาก ");
$pagesql = "เลือกจำนวน(*) เป็นรหัส ".$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 .=" จำกัด $startpos,$page_size ";
ส่งคืน $sql;
-
ฟังก์ชั่นแถบแสดง($string="")
-
$เพจทั่วโลก,$totalpage;
$out="Total<font ".$totalpage." color=@#red@#><b>".$totalpage"</b></font >หน้า";
$ลิงค์นัม =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;
$ถัดไป=$สิ้นสุด+1;
ถ้า($หน้า<>1)
$out .= "< ahref=@#?page=1&&".$string."@#title =หน้าแรก>หน้าแรก</a> ";
ถ้า($เริ่มต้น>1)
$out.="< ahref=@#?page=".$prestart "@# title=หน้าก่อนหน้า>..<<</a> ";
สำหรับ($t=$start;$t<=$end;$t++)
-
$ออก .= ($page==$t) ? "<font [".$t."]color=@#red@#><b>[".$t."]</b></font > " : "< a$thref=@#?page=$t&&".$string."@#>$t</a > ";
-
ถ้า($end<$รวมหน้า)
$out.="< ahref=@#?page=".$nextend"&&".$string "@# title=หน้าถัดไป>>>..</a>";
ถ้า($หน้า<>$รวมหน้า)
$out .= " < ahref=@#?page=".$totalpage"&&".$string "@# title=lastpage>หน้าสุดท้าย</a>";
ส่งคืน $ ออก;
-
8. รับรหัสของข้อมูลที่แทรกใหม่
-
mysql_insert_id();
-
บทความนี้มาจาก: Script House ( www.jb51.net ) การอ้างอิงแหล่งที่มาโดยละเอียด: http://www.jb51.net/article/16071.htm