PHP項(xiàng)目開(kāi)發(fā)中最常用的自定義函數(shù)整理
//alert提示
function alert($msg){
echo "<script>alert('$msg');</script>";
}
//把一些預(yù)定義的字符轉(zhuǎn)換為 HTML 實(shí)體
function d_htmlspecialchars($string) {
if(is_array($string)) {
foreach($string as $key => $val) {
$string[$key] = d_htmlspecialchars($val);
}
} else {
$string = str_replace('&', '&', $string);
$string = str_replace('"', '"', $string);
$string = str_replace(''', ''', $string);
$string = str_replace('<', '<', $string);
$string = str_replace('>', '>', $string);
$string = preg_replace('/&(#\d;)/', '&\1', $string);
}
return $string;
}
//在預(yù)定義字符前加上反斜杠,包括 單引號(hào)、雙引號(hào)、反斜杠、NULL,以保護(hù)數(shù)據(jù)庫(kù)安全
function d_addslashes($string, $force = 0) {
if(!$GLOBALS['magic_quotes_gpc'] || $force) {
if(is_array($string)) {
foreach($string as $key => $val) $string[$key] = d_addslashes($val, $force);
}
else $string = addslashes($string);
}
return $string;
}
//生成隨機(jī)字符串,包含大寫、小寫字母、數(shù)字
function randstr($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;
}
//轉(zhuǎn)換時(shí)間戳為常用的日期格式
function trans_time($timestamp){
if($timestamp < 1) echo '無(wú)效的Unix時(shí)間戳';
else return date("Y-m-d H:i:s",$timestamp);
}
//獲取IP
function get_ip() {
if ($_SERVER["HTTP_X_FORWARDED_FOR"])
$ip = $_SERVER["HTTP_X_FORWARDED_FOR"];
else if ($_SERVER["HTTP_CLIENT_IP"])
$ip = $_SERVER["HTTP_CLIENT_IP"];
else if ($_SERVER["REMOTE_ADDR"])
$ip = $_SERVER["REMOTE_ADDR"];
else if (getenv("HTTP_X_FORWARDED_FOR"))
$ip = getenv("HTTP_X_FORWARDED_FOR");
else if (getenv("HTTP_CLIENT_IP"))
$ip = getenv("HTTP_CLIENT_IP");
else if (getenv("REMOTE_ADDR"))
$ip = getenv("REMOTE_ADDR");
else
$ip = "Unknown";
return $ip;
}
//計(jì)算時(shí)間差:默認(rèn)返回類型為“分鐘”
//$old_time 只能是時(shí)間戳,$return_type 為 h 是小時(shí),為 s 是秒
function timelag($old_time,$return_type='m'){
if($old_time < 1){
echo '無(wú)效的Unix時(shí)間戳';
}else{
switch($return_type){
case 'h':
$type = 3600; break;
case 'm':
$type = 60; break;
case 's':
$type = 1; break;
case '':
$type = 60; break;
}
$dif = round( (time()-$old_time)/$type ) ;
return $dif;
}
}
//獲取當(dāng)前頁(yè)面的URL地址
function url_this(){
$url = "http://".$_SERVER ["HTTP_HOST"].$_SERVER["REQUEST_URI"];
$return_url = "<a href='$url'>$url</a>";
return $return_url;
}
//跳轉(zhuǎn)函數(shù)
function url_redirect($url,$delay=''){
if($delay == ''){
echo "<script>window.location.href='$url'</script>";
}else{
echo "<meta http-equiv='refresh' content='$delay;URL=$url' />";
}
}
} //end func
?>
相關(guān)文章
PHP實(shí)現(xiàn)動(dòng)態(tài)添加X(jué)ML中數(shù)據(jù)的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)動(dòng)態(tài)添加X(jué)ML中數(shù)據(jù)的方法,結(jié)合實(shí)例形式分析了php操作xml格式數(shù)據(jù)類的定義及簡(jiǎn)單使用技巧,需要的朋友可以參考下2018-03-03
PHP實(shí)現(xiàn)將優(yōu)酷土豆騰訊視頻html地址轉(zhuǎn)換成flash swf地址的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)將優(yōu)酷土豆騰訊視頻html地址轉(zhuǎn)換成flash swf地址的方法,涉及php根據(jù)各個(gè)網(wǎng)站的網(wǎng)址規(guī)則針對(duì)URL地址的正則匹配與轉(zhuǎn)換相關(guān)操作技巧,需要的朋友可以參考下2017-08-08
幾行代碼輕松實(shí)現(xiàn)PHP文件打包下載zip
這篇文章主要為大家詳細(xì)介紹了使用PHP自帶zlib函數(shù) ,輕松實(shí)現(xiàn)PHP文件打包下載zip,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
php批量添加數(shù)據(jù)與批量更新數(shù)據(jù)的實(shí)現(xiàn)方法
這篇文章主要介紹了php批量添加數(shù)據(jù)與批量更新數(shù)據(jù)的實(shí)現(xiàn)方法,涉及針對(duì)表單的處理與sql語(yǔ)句的靈活使用,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2014-12-12
PHP實(shí)現(xiàn)登陸并抓取微信列表中最新一組微信消息的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)登陸并抓取微信列表中最新一組微信消息的方法,涉及php針對(duì)微信接口的登陸、抓取、轉(zhuǎn)換等相關(guān)操作技巧,需要的朋友可以參考下2017-07-07
PHP 中關(guān)于ord($str)>0x80的詳細(xì)說(shuō)明
為了識(shí)別雙字節(jié)的字符,比如漢字或日文韓文等都是占兩字節(jié)的,每字節(jié)高位為1,而一般西文字符只有一個(gè)字節(jié),七位有效編碼,高位為0而0x80對(duì)應(yīng)的二進(jìn)制代碼為1000 0000,最高位為一,代表漢字.漢字編碼格式通稱為10格式. 一個(gè)漢字占2字節(jié),但只代表一個(gè)字符2012-09-09
php插入中文到sqlserver 2008里出現(xiàn)亂碼的解決辦法分享
今天使用php操作數(shù)據(jù)庫(kù)時(shí)發(fā)現(xiàn)插入SQL Server 2008數(shù)據(jù)庫(kù)里的中文字段出現(xiàn)亂碼,通過(guò)下面的方法解決了,需要的朋友可以參考下2012-07-07
PHP查詢大量數(shù)據(jù)內(nèi)存耗盡問(wèn)題的解決方法
這篇文章主要為大家詳細(xì)介紹了PHP查詢大量數(shù)據(jù)內(nèi)存耗盡問(wèn)題的解決方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-10-10
PHP調(diào)試函數(shù)和日志記錄函數(shù)分享
這篇文章主要介紹了PHP調(diào)試函數(shù)和日志記錄函數(shù)分享,本文分享的函數(shù)都是自己項(xiàng)目中使用的,需要的朋友可以參考下2015-01-01

