欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

PHP开发中经常用到的一些函数

程序员文章站 2024-02-02 14:20:40
...
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 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=\"".$_SERVER["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:".$_SERVER['HTTP_REFERER'];
if(!isset($_SERVER['HTTP_REFERER'])) {
header("location: index.php");
exit;
}
$urlar = parse_url($_SERVER['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)
while($data = fread($fp, filesize($file))){
$tdata .= $data;
}
fclose($fp);
return $tdata;
}
}
?>