/* 文件内容:PHP常用自定义函数 更新时间:2010/9/1 函数列表: 1. response_file 2. alert_redirect 3. rsp_redirect 4. db_list_page */ /*------------------函数开始------------------*/ /* 1. 函数:response_file 输入:$file_dir,文件完整路径;$file_name,文件名 输出:无 返回:无 */ function response_file($file_dir,$file_name) { $file_path = $file_dir; if(!file_exists($file_path)) { echo '对不起,你要下载的文件不存在。'; return false; } $file_size = filesize($file_path); /* header("Content-type: application/octet-stream"); header("Accept-Ranges: bytes"); header("Accept-Length: $file_size"); header("Content-Disposition: attachment; filename=".$file_name); */ header('Pragma: public'); header('Last-Modified: '.gmdate('D, d M Y H:i:s') . ' GMT'); header('Cache-Control: no-store, no-cache, must-revalidate'); header('Cache-Control: pre-check=0, post-check=0, max-age=0'); header('Content-Transfer-Encoding: binary'); header('Content-Encoding: none'); header('Content-type: application/octet-stream'); header('Content-Disposition: attachment; filename="' . $file_name . '"'); header('Content-length: ' . $file_size); $fp = fopen($file_path,"r"); $buffer_size = 1024; $cur_pos = 0; while(!feof($fp)&&$file_size-$cur_pos>$buffer_size) { $buffer = fread($fp,$buffer_size); echo $buffer; $cur_pos += $buffer_size; } $buffer = fread($fp,$file_size-$cur_pos); echo $buffer; fclose($fp); } /* 2. 函数:alert_redirect 输入:$msg,提示内容;$url,跳转地址 输出:无 返回:无 */ function alert_redirect($msg, $url) { $tmp = ''; echo $tmp; die(''); } /* 3. 函数:rsp_redirect 输入:$url,跳转地址 输出:无 返回:无 */ function rsp_redirect($url) { $tmp = ''; echo $tmp; die(''); } /* 4. 函数:db_list_page 输入:$url,跳转地址 输出:无 返回:无 */ function db_list_page($page,$total,$phpfile,$pagesize=3,$pagelen=3){ $pagecode = '';//定义变量,存放分页生成的HTML $page = intval($page);//避免非数字页码 $total = intval($total);//保证总记录数值类型正确 if(!$total) return array();//总记录数为零返回空数组 $pages = ceil($total/$pagesize);//计算总分页 //处理页码合法性 if($page<1) $page = 1; if($page>$pages) $page = $pages; //计算查询偏移量 $offset = $pagesize*($page-1); //页码范围计算 $init = 1;//起始页码数 $max = $pages;//结束页码数 $pagelen = ($pagelen%2)?$pagelen:$pagelen+1;//页码个数 $pageoffset = ($pagelen-1)/2;//页码个数左右偏移量 //生成html $pagecode='