Thinkphp 去除bom头 解决模版空输出问题
2014-03-04 10:15
169 查看
<?php if (isset($_GET['dir'])){ //config the basedir $basedir=$_GET['dir']; }else{ $basedir = '.'; } $auto = 1; checkdir($basedir); function checkdir($basedir){ if ($dh = opendir($basedir)) { while (($file = readdir($dh)) !== false) { if ($file != '.' && $file != '..'){ if (!is_dir($basedir."/".$file)) { echo "filename: $basedir/ $file ".checkBOM("$basedir/$file")." <br>"; }else{ $dirname = $basedir."/". $file; checkdir($dirname); } } } closedir($dh); } } function checkBOM ($filename) { global $auto; $contents = file_get_contents($filename); $charset[1] = substr($contents, 0, 1); $charset[2] = substr($contents, 1, 1); $charset[3] = substr($contents, 2, 1); if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) { if ($auto == 1) { $rest = substr($contents, 3); rewrite ($filename, $rest); return ("<font color=red>BOM found,automatically removed.</font>"); } else { return ("<font color=red>BOM found.</font>"); } } else return ("BOM Not Found."); } function rewrite ($filename, $data) { $filenum = fopen($filename, "w"); flock($filenum, LOCK_EX); fwrite($filenum, $data); fclose($filenum); } ?>
相关文章推荐
- 解决CodeSmith代码模版输出文件的编码格式为有bom的UTF-8的问题
- 一键去除网页BOM属性【解决乱码,头部空白,问题】
- 解决thinkphp display输出问题
- php解决json_encode输出GB2312中文问题 (数组)
- ueditor 编辑器再thinkphp中使用 解决转义问题
- 问题解决:Xcode运行后没有输出结果
- 远程连接Windows Server2008 未安装任何音频输出设备 启用声音音频解决 声音问题
- 解决Python print 输出文本显示 gbk 编码错误问题
- 解决Eclipse代码分析插件SonarLint在Console输出乱码问题
- 真正解决 thinkphp 验证码 出错 无法显示 问题
- 解决Android studio logcat无法输出指定包名的log问题
- 【android】解决华为手机无法输出Log.d(..)的问题
- 用dom4j建立,修改XML文档,并解决格式化输出和中文问题
- 用jsp动态输出excel文档和中文乱码问题的解决
- Spring3+MyBatis3整合log4j无法输出SQL语句问题的解决
- ThinkPHP下的域名直接访问主页问题解决方案
- 【thinkphp】解决IF标签变量与变量比较出现的问题
- OC中NSDate对象的输出时差解决即时区本地化问题
- 困扰多年的THINKPHP隐藏后台.php问题终于解决了!
- 解决HttpServletResponse输出的中文乱码问题