PHP开发中常用的一些函数_[PHP教程]
class useful{ /* * 常用函数类 * 作 者:多菜鸟 * 联系邮箱:kingerq AT msn DOT com * 创建时间:2005-07-18 * 来源:http://blog.csdn.net/kingerq */ /* * 功能:格式化数字,以标准MONEY格式输出 */ function formatnumber(num){ return number_format(num, 2, ".", ","); } /* * 功能:格式化文本,将\n转成
等 * 参数:string 来源字符串 * 返回:处理后的字符串 */ function formatstring(string = ""){ string = preg_replace(array("/ /", "/ /"), array(" ", " "), string); return nl2br(string); } /* * 功能:格式化文本输出 * 参数 text 为需格式化的文本内容 */ function formatcontent(text){ trans = get_html_translation_table(HTML_SPECIALCHARS); trans = array_flip(trans); text = strtr(text, trans); //text = str_replace("\n", "
", text); //text = str_replace(" ", " ", text); return text; } /* * 将字节转换成Kb或者Mb * 参数 num为字节大小 */ function bitsize(num){ if(!preg_match("/^[0-9]+/", num)) return 0; return num > 1024 ? (num/1024 > 1024 ? round(num/1024/1024, 2)." Mb" : round(num/1024, 2)." Kb") : num." 字节"; } /* * 防注入处理(为变量加入斜杠)函数 * 参数 array 为防注入变量数组 */ function add_s(&array){ foreach(array as key=>value){ if(!is_array(value)){ array[key]=addslashes(value); }else{ this->add_s(array[key]); } } } /* * 转换HTML特殊字符(表单提交的时候使用,防止恶意JS代码) * 参数 array 为需转换的字符串或者数组 */ function specialhtml(&array){ if(is_array(array)){//数组处理 foreach(array as key=>value){ if(!is_array(value)){ array[key]=htmlspecialchars(value); }else{ this->specialhtml(array[key]); } } }else{ array = htmlspecialchars(array); } } /* * 可以避免乱码的截取汉字 * 参数 str 为字符串,start 为开始字符,len 结束字符 * 返回截取后的字符 */ function msubstr(str, start, len) { tmpstr = ""; strlen = start + len; for(i = 0; i < strlen; i++) { if(ord(substr(str, i, 1)) > 0xa0) { tmpstr .= substr(str, i, 2); i++; } else tmpstr .= substr(str, i, 1); } return tmpstr; } /* * 功能:综合提示JS代码输出 * 参数 msg 为提示信息 * direct 为提示类型 0为提示(默认)1为提示刷新返回 2为提示返回 * 输出提示代码并结束程序 */ function alert_msg(msg, direct = "0"){ switch(direct){ case '0'://提示 script = ""; case '1'://提示刷新返回 script = "location.href=\""._SESSION["HTTP_REFERER"]."\";"; break; case '2'://提示返回 script = "history.back();"; break; default://提示转向指定页面 script = "location.href=\"".direct."\";"; } echo ""; exit; } /* * 功能:取得给定日期所在周的开始日期和结束日期 * 参数:gdate 日期,默认为当天,格式:YYYY-MM-DD * first 一周以星期一还是星期天开始,0为星期天,1为星期一 * 返回:数组array("开始日期", "结束日期"); */ function aweek(gdate = "", first = 0){ if(!gdate) gdate = date("Y-m-d"); w = date("w", strtotime(gdate));//取得一周的第几天,星期天开始0-6 dn = w ? w - first : 6;//要减去的天数 st = date("Y-m-d", strtotime("gdate -".dn." days")); en = date("Y-m-d", strtotime("st +6 days")); return array(st, en);//返回开始和结束日期 } /* * 功能:检测页面是否合法连接过来 * 如果为非法,就转向到登陆窗口 */ function checkurl(){ //如果直接从浏览器连接到页面,就连接到登陆窗口 //echo "referer:"._SESSION['HTTP_REFERER']; if(!isset(_SESSION['HTTP_REFERER'])) { header("location: index.php"); exit; } urlar = parse_url(_SESSION['HTTP_REFERER']); //如果页面的域名不是服务器域名,就连接到登陆窗口 if(_SERVER["HTTP_HOST"] != urlar["host"]) { header("location: index.php"); exit; } } /* * 读取文件内容 * 参数 file 为文件名及完整路径 * 返回文件内容 */ function readfiles(file){ tdata = ""; fp = fopen(file, "r"); if(filesize(file) <= 0) return; while(data = fread(fp, filesize(file))){ tdata .= data; } fclose(fp); return tdata; } } ?>
|