·设为首页收藏本站📧邮箱修改🎁免费下载专区🔐设置/修改密码👽群雄群聊
返回列表 发布新帖

西瓜分类信息自动检测文件BOM自修复BOM异常文件编码问题的优化补丁UTF8 BOM 清除器

264 0
发表于 2021-6-10 14:56:37 | 查看全部 阅读模式

马上注册,免费下载更多dz插件网资源。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
西瓜分类信息自动检测文件BOM自修复BOM异常文件编码问题的优化补丁UTF8 BOM 清除器:


西瓜分类信息使用InnoDB引擎无bom格式的文件编码方式, 如果使用编辑器修改配置或者查看文件时没有注意编辑器设置将可能在被编辑的文件上附加BOM头, 从而造成发呢类信息系统功能或文件乱码错误.
以下补丁可以解决BOM异常的问题:

上传 bomkill.php 到路径:

/source/plugin/xigua_hb/  下。
bomkill.php文件内容:
  1. <?php
  2. // 设定你要清除BOM的根目录(会自动扫描所有子目录和文件)
  3. $HOME = dirname(__FILE__);
  4. // 如果是Windows系统,修改为:$WIN = 1;
  5. $WIN = 0;
  6. ?>
  7. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  8. <html xmlns="http://www.w3.org/1999/xhtml">
  9. <head>
  10. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  11. <title>UTF8 BOM 清除器</title>
  12. <style>
  13. body { font-size: 10px; font-family: Arial, Helvetica, sans-serif; background: #FFF; color: #000; }
  14. .FOUND { color: #F30; font-size: 14px; font-weight: bold; }
  15. </style>
  16. </head>
  17. <body>
  18. <?php
  19. $BOMBED = array();
  20. RecursiveFolder($HOME);
  21. echo '<h2>These files had UTF8 BOM, but i cleaned them:</h2><p class="FOUND">';
  22. foreach ($BOMBED as $utf) { echo $utf ."<br />\n"; }
  23. echo '</p>';
  24. // 递归扫描
  25. function RecursiveFolder($sHOME) {
  26. global $BOMBED, $WIN;
  27. $win32 = ($WIN == 1) ? "\" : "/";
  28. $folder = dir($sHOME);
  29. $foundfolders = array();
  30. while ($file = $folder->read()) {
  31.   if($file != "." and $file != "..") {
  32.    if(filetype($sHOME . $win32 . $file) == "dir"){
  33.     $foundfolders[count($foundfolders)] = $sHOME . $win32 . $file;
  34.    } else {
  35.     $content = file_get_contents($sHOME . $win32 . $file);
  36.     $BOM = SearchBOM($content);
  37.     if ($BOM) {
  38.      $BOMBED[count($BOMBED)] = $sHOME . $win32 . $file;
  39.      // 移出BOM信息
  40.      $content = substr($content,3);
  41.      // 写回到原始文件
  42.      file_put_contents($sHOME . $win32 . $file, $content);
  43.     }
  44.    }
  45.   }
  46. }
  47. $folder->close();
  48. if(count($foundfolders) > 0) {
  49.   foreach ($foundfolders as $folder) {
  50.    RecursiveFolder($folder, $win32);
  51.   }
  52. }
  53. }
  54. // 搜索当前文件是否有BOM
  55. function SearchBOM($string) {
  56.   if(substr($string,0,3) == pack("CCC",0xef,0xbb,0xbf)) return true;
  57.   return false;
  58. }
  59. ?>
  60. </body>
  61. </html>
复制代码

附件: 西瓜分类信息自动检测文件BOM自修复BOM异常文件编码问题的优化补丁UTF8 BOM 清除器 西瓜,分类,分类信息,信息,自动 bomkill.php (1.86 KB, 下载次数: 1, 售价: 1 下载币)

我要说一句 收起回复
一花一世界,一叶一追寻。一曲一场叹,一生为一人。

回复

 懒得打字嘛,点击右侧快捷回复【查看最新发布】   【应用商城享更多资源】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

投诉/建议联系

discuzaddons@vip.qq.com

未经授权禁止转载,复制和建立镜像,
如有违反,按照公告处理!!!
  • 联系QQ客服
  • 添加微信客服

联系DZ插件网微信客服|最近更新|Archiver|手机版|小黑屋|DZ插件网! ( 鄂ICP备20010621号-1 )|网站地图

您的IP:18.223.124.24,110.185.108.75,GMT+8, 2024-5-21 19:09 , Processed in 0.182893 second(s), 73 queries , Gzip On, Redis On.

Based on Discuz! W1.0 Licensed

© 2001-2024 Discuz! Team.

关灯 在本版发帖
扫一扫添加微信客服
QQ客服返回顶部
快速回复 返回顶部 返回列表