用PHP去掉文件头的Unicode签名(BOM)方法

发布时间 - 2026-01-11 02:00:12    点击率:

废话不多说,直接上代码

<?php

//此文件用于快速测试UTF8编码的文件是不是加了BOM,并可自动移除

//By Bob Shen

$basedir="."; //修改此行为需要检测的目录,点表示当前目录

$auto=1; //是否自动移除发现的BOM信息。1为是,0为否。

//以下不用改动

if ($dh = opendir($basedir)) {

while (($file = readdir($dh)) !== false) {

if ($file!='.' && $file!='..' && !is_dir($basedir."/".$file)) echo "filename: $file ".checkBOM("$basedir/$file")." <br>";

}

closedir($dh);

}

function checkBOM ($filename) {

$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) {
$rest=substr($contents, 3);
rewrite ($filename, $rest);
return true;
}
else return ("BOM Not Found.");
}

function rewrite ($filename, $data) {
$filenum=fopen($filename,"w");
flock($filenum,LOCK_EX);
fwrite($filenum,$data);
fclose($filenum);
}

?>

以上这篇用PHP去掉文件头的Unicode签名(BOM)方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# 去掉文件头部bom  # PHP开发API接口签名生成及验证操作示例  # 浅谈PHP SHA1withRSA加密生成签名及验签  # php实现往pdf中加数字签名操作示例【附源码下载】  # PHP实现的MD5结合RSA签名算法实例  # PHP实现RSA签名生成订单功能【支付宝示例】  # php rsa 加密  # 解密  # 签名  # 验签详解  # php 生成签名及验证签名详解  # php接口数据加密、解密、验证签名  # 详解PHP接口签名验证  # 给大家  # 移除  # 希望能  # 并可  # 这篇  # 多说  # 小编  # 大家多多  # Shen  # basedir  # Bob  # file  # is_dir  # auto  # false  # readdir  # opendir  # dh  # amp  # BOM 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: Laravel Fortify是什么,和Jetstream有什么关系  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  阿里云高弹*务器配置方案|支持分布式架构与多节点部署  java获取注册ip实例  教学论文网站制作软件有哪些,写论文用什么软件 ?  MySQL查询结果复制到新表的方法(更新、插入)  韩国代理服务器如何选?解析IP设置技巧与跨境访问优化指南  七夕网站制作视频,七夕大促活动怎么报名?  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】  JavaScript中如何操作剪贴板_ClipboardAPI怎么用  Laravel如何处理文件下载请求?(Response示例)  高端智能建站公司优选:品牌定制与SEO优化一站式服务  原生JS获取元素集合的子元素宽度实例  Laravel用户密码怎么加密_Laravel Hash门面使用教程  历史网站制作软件,华为如何找回被删除的网站?  Android使用GridView实现日历的简单功能  微信h5制作网站有哪些,免费微信H5页面制作工具?  Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】  Laravel队列由Redis驱动怎么配置_Laravel Redis队列使用教程  js代码实现下拉菜单【推荐】  如何快速生成高效建站系统源代码?  北京网站制作的公司有哪些,北京白云观官方网站?  Laravel如何实现文件上传和存储?(本地与S3配置)  BootStrap整体框架之基础布局组件  三星网站视频制作教程下载,三星w23网页如何全屏?  如何基于云服务器快速搭建个人网站?  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  Edge浏览器怎么启用睡眠标签页_节省电脑内存占用优化技巧  Laravel如何处理JSON字段的查询和更新_Laravel JSON列操作与查询技巧  ,网页ppt怎么弄成自己的ppt?  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  如何获取上海专业网站定制建站电话?  高性价比服务器租赁——企业级配置与24小时运维服务  WordPress 子目录安装中正确处理脚本路径的完整指南  如何用PHP工具快速搭建高效网站?  nginx修改上传文件大小限制的方法  如何快速使用云服务器搭建个人网站?  弹幕视频网站制作教程下载,弹幕视频网站是什么意思?  北京企业网站设计制作公司,北京铁路集团官方网站?  在线制作视频网站免费,都有哪些好的动漫网站?  Laravel怎么为数据库表字段添加索引以优化查询  香港服务器网站推广:SEO优化与外贸独立站搭建策略  如何在IIS中新建站点并解决端口绑定冲突?  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  公司网站制作需要多少钱,找人做公司网站需要多少钱?  香港服务器建站指南:外贸独立站搭建与跨境电商配置流程