从导入的 CSV 文件中删除 BOM
导入 .csv 文件时,经常会遇到 BOM(字节顺序标记),它可能会干扰数据处理。可以通过从文件中删除 BOM 来解决此问题。
删除 BOM 的一种方法是使用正则表达式:
$new_file = preg_replace('/[\x00-\x1F\x80-\xFF]/', '', $file);
但是,此方法可能并不总是可靠。建议使用 file_get_contents 函数的替代方法:
$content = file_get_contents($filepath); file_put_contents($filepath, str_replace("\xEF\xBB\xBF", '', $content));
此方法会用 BOM 删除的数据覆盖文件,使您可以继续处理文件,而无需BOM 干扰。
但是,使用 file_put_contents 会关闭文件,这可能会破坏您现有的脚本。要解决此问题,请在写入后使用 fopen 重新打开文件:
$file = fopen($filepath, "r") or die("Error opening file");
通过实现这些技术,您可以有效地从导入的 .csv 文件中删除 BOM,并确保脚本中的数据处理顺利。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3