检测文件是否有BOM 头,并删除BOM头(php)
将下面文件放在网站根目录访问即可,它会遍历当前目录下所有子目录,检测文件是否含有BOM头,并删除BOM头
<?php //remove the utf-8 boms //by magicbug at gmail dot com set_time_limit(0);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 ";echo 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); } ?>
转载于:https://www.cnblogs.com/lsy-ai/p/6244888.html
检测文件是否有BOM 头,并删除BOM头(php)相关推荐
- utf8 bom 去掉 java_utf-8-BOM删除bom
utf-8 bom,去除bom //开始 function file_bom($wenjian,$remove = true) { //读取文件,将文件写入字符串 $contents = file_ ...
- 详解BOM头以及去掉BOM头的方法
类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB 0xBF,即BOM).它是一串隐藏的字符,用于让记事本等编辑器识别 ...
- PHP网站设计 ---- 网盘(实现用户注册、登录,文件上传、下载、删除、查看等功能)
PHP网站设计 ---- 网盘(实现用户注册.登录,文件上传.下载.删除.查看等功能) 运行效果 视频演示 项目下载(在xampp/htdocs/下可以直接运行) 完整项目包.zip 功能要求 当用户 ...
- nodeJs实现文件上传,下载,删除
转:https://blog.csdn.net/qq_36228442/article/details/81709272 一.简介 本文介绍了nodeJs+express框架下,用multer中间件实 ...
- python检测文件夹中新增文件_python检测文件夹变化,并拷贝有更新的文件到对应目录的方法...
检测文件夹,拷贝有更新的文件到对应目录 2016.5.19 亲测可用,若有借鉴请修改下文件路径: 学习python小一个月后写的这个功能,属于初学,若有大神路过,求代码优化~ newcopy.py: ...
- php怎么查自己的文件编码,php检测文件编码的方法示例
关于文件编码的检测,很多人建议 mb_detect_encoding 检测,可是不知为何不成功,什么都没输出.看到有人写了个增强版,用 BOM 判断的,我果断就无视了,这东西完全不靠谱.最终根据PHP ...
- 在.NetCore中使用Myrmec检测文件真实格式
Myrmec 是什么? Myrmec 是一个用于检测文件格式的库,Myrmec不同于其它库或者手写检测代码,Myrmec不依赖文件扩展名(在实际使用中,你的用户很可能使用虚假的扩展名欺骗你的应用程序) ...
- php 检测编码函数,自己写了一个php检测文件编码的函数
关于文件编码的检测,百度一下一大把都是,但是确实没有能用的. 很多人建议 mb_detect_encoding 检测,可是不知为何我这不成功,什么都没输出. 看到有人写了个增强版,用 BOM 判断的, ...
- windows .bat脚本检测文件更新,并复制
最近需要检测文件夹中文件是否更新,然后复制到指定路径 ,使用的是windows bat脚本 记录一下 ,代码如下 mkdir 001 002 003 004 005 006 007 008 009 ...
最新文章
- MathType6.9b安装及在Word2013中无法正常使用的解决方法
- LAMP环境搭建之rpm软件包
- onvif_discover虚拟摄像头
- Android跨屏拖动item,android中如何实现两个listview中的item可以互相拖拽移位?
- xvid 数据编码和解码
- 2015蓝桥杯省赛---java---A---2(星系炸弹)
- 怎么一秒钟给微信头像戴上圣诞帽,我教你啊
- 【2018-2019-1】20165223-20165218 实验二 固件程序设计
- 计算机主板及其硬件图,[计算机硬件及网络]intel G43主板电路图.pdf
- knn算法python代码识别手写数字_python使用KNN算法识别手写数字
- 详解阿里云第六代增强型实例,性能强劲,百万IOPS加持
- 终于更新了!利用黎曼几何分析EEG脑电信号(三)
- list object has no attribute ZScan_【恋爱体验】No.112丨大二男生,河南南阳,身高178,喜欢篮球、羽毛球、兵乓球、足球.........
- 卷积神经网络西储大学轴承故障诊断(基于时频变换)
- 数据湖与数据仓库的新未来:阿里提出湖仓一体架构
- 港科夜闻|香港科大冯雁教授专访:人工智能的发展不能脱离人本
- 使用socket.io实现强制踢出其他在线账号
- Processor Microarchitecture(Mark D.Hill ):Cache
- 关于InstallShield Projects
- Win10电脑遇到DistributedCOM错误10016怎么解决?【系统天地】