php技巧小结【推荐】
                        1 如何定义linux和window通用的文件分隔符号DIRECTORY_SEPARATOR : 目录分隔符,是定义php的内置常量。在调试机器上,在windows我们习惯性的使用“”作为文件分隔符,但是在linux上系统不认识这个标识,于是就要引入这个php内置常量了:DIRECTORY_SEPARATOR 这样可以不用判断是在linux还是window系统下 2 PHP压缩与解压缩类PclZip是一个很强大的压缩与解压缩zip文件的PHP类,PclZip library能够压缩与解压缩Zip格式的压缩档(WinZip、PKZIP);且能对此类类档案进行处理,包括产生压缩档、列出压缩档的内容以及解压缩档案等等。同时也可以对现有的ZIP包进行添加或删除文件。 最近在压缩文件方面用到了它 生成zip文件用法一: create('file.txt,data/text.txt,folder');
 if ($v_list == 0) {
 die("Error : ".$archive->errorInfo(true));
 }
?>
 用法二: create('data/file.txt,data/text.txt',PCLZIP_OPT_REMOVE_PATH,'data',PCLZIP_OPT_ADD_PATH,'install');
 if ($v_list == 0) {
 die("Error : ".$archive->errorInfo(true));
 }
?>
 官方网站: 3 一小段“劣质”的PHP代码优化的过程,请仔细体会优化过程下面这一小段“劣质”的PHP代码是一道简化了的测试题。这种问题就像在问:你该怎样优化这段代码? Search results for query: " . $_GET['query'] . "."); ?>这段代码的主要问题在于它把用户提交的数据直接显示到了网页上,从而产生XSS漏洞。其实有很多方法可以填补这个漏洞。那么,什么代码是我们想要的呢? Search results for query: " . htmlspecialchars($_GET['query']) . "."); ?>这是最低要求。XSS漏洞用htmlspecialchars函数填补了,从而屏蔽了非法字符。 Search results for query: ',htmlspecialchars($_GET['query'],ENT_QUOTES),'.'; } ?>接着优化: Search results for query: ','.'; } ?>
 4 不用三方类库导出MySQL数据到Excel如果你经常导出数据,那你可能会遇到用第三方类库导出上限,这是一个很无奈的事情,在超过两万条数据的时候,经常导出失败。很容易到达PHP内存使用上限 query($sql); 
// 打开PHP文件句柄,php://output 表示直接输出到浏览器 
$fp = fopen('php://output','a'); 
// 输出Excel列名信息 
$head = array('姓名','性别','年龄','Email','电话','……'); 
foreach ($head as $i => $v) { 
 // CSV的Excel支持GBK编码,一定要转换,否则乱码 
 $head[$i] = iconv('utf-8','gbk',$v); 
} 
// 将数据通过fputcsv写到文件句柄 
fputcsv($fp,$head); 
// 计数器 
$cnt = 0; 
// 每隔$limit行,刷新一下输出buffer,不要太大,也不要太小 
$limit = 100000; 
// 逐行取出数据,不浪费内存 
while ($row = $stmt->fetch(Zend_Db::FETCH_NUM)) { 
 $cnt ++; 
 if ($limit == $cnt) { //刷新一下输出buffer,防止由于数据过多造成问题 
 ob_flush(); 
 flush(); 
 $cnt = 0; 
 } 
 foreach ($row as $i => $v) { 
 $row[$i] = iconv('utf-8',$v); 
 } 
 fputcsv($fp,$row); 
}
 这里的方法是利用fputcsv写CSV文件的方法,直接向浏览器输出Excel文件。 以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持脚本之家! (编辑:莱芜站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!  | 
                  
