清理php中的bom

简介: <?php if (isset($_GET['dir'])){ //config the basedir $basedir=$_GET['dir']; }else{ $basedir = '.'; } $auto = 1; checkdir($basedir); function checkdir($basedir){ if (
  1. <?php
  2. if (isset($_GET['dir'])){ //config the basedir
  3. $basedir=$_GET['dir'];
  4. }else{
  5. $basedir = '.';
  6. }
  7. $auto = 1;
  8. checkdir($basedir);
  9. function checkdir($basedir){
  10. if ($dh = opendir($basedir)) {
  11. while (($file = readdir($dh)) !== false) {
  12. if ($file != '.' && $file != '..'){
  13. if (!is_dir($basedir."/".$file)) {
  14. echo "filename: $basedir/$file ".checkBOM("$basedir/$file")."
  15. ";
  16. }else{
  17. $dirname = $basedir."/".$file;
  18. checkdir($dirname);
  19. }
  20. }
  21. }
  22. closedir($dh);
  23. }
  24. }
  25. function checkBOM ($filename) {
  26. global $auto;
  27. $contents = file_get_contents($filename);
  28. $charset[1] = substr($contents, 0, 1);
  29. $charset[2] = substr($contents, 1, 1);
  30. $charset[3] = substr($contents, 2, 1);
  31. if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) {
  32. if ($auto == 1) {
  33. $rest = substr($contents, 3);
  34. rewrite ($filename, $rest);
  35. return ("BOM found, automatically removed.");
  36. } else {
  37. return ("BOM found.");
  38. }
  39. }
  40. else return ("BOM Not Found.");
  41. }
  42. function rewrite ($filename, $data) {
  43. $filenum = fopen($filename, "w");
  44. flock($filenum, LOCK_EX);
  45. fwrite($filenum, $data);
  46. fclose($filenum);
  47. }
  48. ?>
相关文章
|
9月前
|
JavaScript 数据库连接 PHP
php部署服务器后本地测试正常的页面顶部出现空白的(&#65279 BOM头)解决方案
php部署服务器后本地测试正常的页面顶部出现空白的(&#65279 BOM头)解决方案
65 0
|
JavaScript PHP
文件bom头,文件bom头保存的什么东西,php读取bom头数据
文件bom头,文件bom头保存的什么东西,php读取bom头数据
65 0
|
JavaScript PHP
文件bom头,文件bom头保存的什么东西,php读取bom头数据
文件bom头,文件bom头保存的什么东西,php读取bom头数据
96 0
|
JavaScript PHP 编解码
|
JavaScript 测试技术 PHP
|
JavaScript PHP 数据格式
php bom \ufeff
2015年5月29日 16:50:56 星期五 五月的最后一个周五............. 前两天遇到一个问题 PHP 返回json数据, 其他人死活解析不出来 json_last_error(); // 返回4, utf8 错误 他们对我返回的json再次json_encode后用 var_dump();打印, 发现, 最开始的地方有个\ufeff.
1036 0
|
JavaScript PHP 网络架构
批量去除PHP文件中bom的PHP代码
今天搜索查看网页源码时为什么开头会有空行这个问题时找到的,批量去除PHP文件中bom的PHP代码     需要去除BOM,就把附件里的tool.php文件放到目标目录,然后在浏览器访问tool.php即可! 
892 0
|
7月前
|
关系型数据库 MySQL PHP
PHP 原生操作 Mysql
PHP 原生操作 Mysql
81 0
|
7月前
|
关系型数据库 MySQL 数据库连接
PHP 原生连接 Mysql
PHP 原生连接 Mysql
107 0