ホームページ  >  記事  >  バックエンド開発  >  インポートされた CSV ファイルから BOM を削除するにはどうすればよいですか?

インポートされた CSV ファイルから BOM を削除するにはどうすればよいですか?

DDD
DDDオリジナル
2024-11-03 04:47:30731ブラウズ

How to Remove BOM from Imported CSV Files?

インポートされた CSV ファイルから BOM を削除する

.csv ファイルをインポートするときに、BOM (バイト オーダー マーク) が発生するのが一般的です。データ処理を妨げる可能性があります。この問題は、ファイルから BOM を削除することで解決できます。

BOM を削除する 1 つの方法は、正規表現を使用することです。

$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 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。