从导入的 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,并确保脚本内顺利进行数据处理。
以上是如何从导入的 CSV 文件中删除 BOM?的详细内容。更多信息请关注PHP中文网其他相关文章!