بعض وظائف PHP المستخدمة بشكل متكرر
الكاتب:Eve Cole
وقت التحديث:2009-06-05 16:25:00
في تطوير PHP، غالبًا ما نواجه بعض الوظائف التالية منظمة ويمكن استخدامها مباشرة لتسهيل كفاءة التطوير، ومع ذلك، يوصى بفهمها أولاً، ثم إضافة وظائف على هذا الأساس لتحسين قدراتك.
1. إنشاء وظيفة سلسلة عشوائية
وظيفة عشوائية(طول $) {
$التجزئة = @#@#;
$chars = @#abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz@#;
$max = strlen($chars) - 1;
mt_srand((double)microtime() * 1000000);
for($i = 0; $i < $length; $i++) {
$hash .= $chars[mt_rand(0, $max)];
}
إرجاع التجزئة $؛
}
2. اعتراض سلسلة بطول معين ملاحظة: هذه الوظيفة صالحة لـ gb2312
وظيفة قطع الكلمات($string, $length,$sss=0) {
إذا (سترلين($string) > $length) {
إذا($سسس){
$length=$length - 3;
$addstr=@# ...@#;
}
for($i = 0; $i < $length; $i++) {
إذا (أورد($string[$i]) > 127) {
$wordscut .= $string[$i].$string[$i + 1];
$i++;
} آخر {
$wordscut .= $string[$i];
}
}
إرجاع $wordscut.$addstr;
}
إرجاع سلسلة $؛
}
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 = $_server[@#remote_addr@#];
آخر
$ip = "غير معروف";
العودة($ip);
}
4. قم بإنشاء المجلدات المقابلة
تم إنشاء الدالة($dir=@#@#)
{
إذا (!is_dir($dir))
{
$درجة الحرارة = تنفجر(@#/@#,$dir);
$cur_dir = @#@#;
ل($i=0;$i<count($temp);$i++)
{
$cur_dir .= $temp[$i].@#/@#;
إذا (!is_dir($cur_dir))
{
@mkdir($cur_dir,0777);
}
}
}
}
5. تحديد عنوان البريد الإلكتروني
وظيفة التحقق من البريد الإلكتروني($inaddress)
{
return (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 .="< tablecellspaceing=@#0@#cellpadding=@#0@#border=@#1@#width=@#450@#align=@#center @#>";
$html .="<tr>< tdbgcolor=@##ffffff @#>";
$html .="< tableborder=@#1@#cellspaceing=@#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 )@#> Return</a>]";
$html .="</td></tr></table></td></tr></table>";
$html .="</body></html>";
صدى $html;
مخرج؛
}
7. الترحيل (يتم استخدام وظيفتين معًا)
وظيفة getpage($sql,$page_size=20)
{
صفحة $ العالمية، $totalpage، $sums؛
$page = $_get["page"];
//$eachpage = $page_size;
$pagesql = strstr($sql,"from ");
$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="")
{
صفحة $ عالمية، صفحة إجمالية $؛
$out="Total<font ".$totalpage." color=@#red@#><b>".$totalpage."</b></font >pages";
$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;
إذا($صفحة<>1)
$out .= "< ahref=@#?page=1&&".$string."@#title =First page>الصفحة الأولى</a> ";
إذا($ابدأ>1)
$out.="< ahref=@#?page=".$prestart ."@# title=الصفحة السابقة>..<<</a> ";
ل($t=$start;$t<=$end;$t++)
{
$out .= ($page==$t) ? "<font [".$t."]color=@#red@#><b>[".$t."]</b></font > " : "< a$thref=@#?page=$t&&".$string."@#>$t</a > ";
}
إذا($end<$totalpage)
$out.="< ahref=@#?page=".$nextend."&&".$string ."@# title=الصفحة التالية>>>..</a>";
إذا($صفحة<>$إجمالي الصفحة)
$out .= " < ahref=@#?page=".$totalpage."&&".$string ."@# title=lastpage>lastpage</a>";
إرجاع $out;
}
8. احصل على معرف البيانات المدرجة حديثا
<؟
mysql_insert_id();
?>
هذه المقالة مأخوذة من: Script House ( www.jb51.net ) مرجع المصدر التفصيلي: http://www.jb51.net/article/16071.htm