ホームページ >バックエンド開発 >PHPチュートリアル >CSV ファイルのフィールド内の二重引用符をエスケープするにはどうすればよいですか?

CSV ファイルのフィールド内の二重引用符をエスケープするにはどうすればよいですか?

DDD
DDDオリジナル
2024-12-08 19:01:10893ブラウズ

How Do I Escape Double Quotes Within Fields in a CSV File?

CSV での二重引用符のエスケープ

引用符で囲まれたフィールドにリテラルの二重引用符が含まれている場合、CSV で二重引用符をエスケープする必要が生じます。パーサーはエスケープされた引用符をフィールド区切り文字として解釈する可能性があるため、これにより解析エラーが発生する可能性があります。

指定された例では、CSV 行には、二重引用符が後に続く語句「24」を含むフィールド値が含まれています。 。引用符はインチを表すために使用されますが、CSV パーサーはこれをフィールドの終わりとして誤って解釈します。

二重引用符を正しくエスケープするには、フィールド値内で 2 つの連続した二重引用符を使用します。これにより、2 番目の引用符がフィールド区切り文字ではなくフィールド データの一部であることがパーサーに伝えられます。正しい CSV 行は次のようになります。

"Samsung U600 24""","10000003409","1","10000003427"

二重引用符の前に単一のバックスラッシュを使用すると、二重引用符ではなくバックスラッシュ自体がエスケープされるため、正しくありません。

RFC-4180、これは CSV 形式を定義しており、「フィールドを囲むために二重引用符が使用されている場合、フィールド内に現れる二重引用符は、その前に別の二重引用符を付けてエスケープする必要がある」と述べています。引用。"

以上がCSV ファイルのフィールド内の二重引用符をエスケープするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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