ホームページ >バックエンド開発 >PHPチュートリアル >PHP で文字列を確実に行に分割し、さまざまな改行文字を処理するにはどうすればよいですか?
PHP でテキストを操作する場合、文字列を行に分割する必要がある場合があります。従来、これは改行文字を区切り文字として使用する展開関数を使用して行われてきました。ただし、入力文字列に改行文字のバリエーションが含まれている場合、この方法では予期しない結果が生じる可能性があります。
提供されたコード:
$skuList = explode('\n\r', $_POST['skuList']);
を意味します。 skuList 入力を Windows スタイル (rn) と UNIX スタイル (n) の両方の改行で分割します。ただし、このアプローチはシステムに依存しないため、異なる改行文字を使用するシステムでは失敗する可能性があります。
システムの独立性を確保するには、PHP_EOL 定数の使用を検討してください。
$skuList = explode(PHP_EOL, $_POST['skuList']);
PHP_EOL は現在のシステムの改行文字を表し、一貫した動作を保証します。あるいは、preg_split を使用してより詳細な制御を行うこともできます。
$skuList = preg_split('/\r\n|\r|\n/', $_POST['skuList']);
この正規表現は、考えられるすべての改行バリエーションに一致し、包括的な分割を保証します。
システムに依存しない定数を使用すると、次のようになります。コードは移植可能ですが、改行規則が異なるシステム間でデータを移動するときに問題が発生する可能性があることに注意することが重要です。これを回避するには、保存する前にデータを徹底的に解析し、システムに依存する要素をすべて削除します。
以上がPHP で文字列を確実に行に分割し、さまざまな改行文字を処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。