ホームページ > バックエンド開発 > PHPチュートリアル > PHP で複数行の文字列を確実に分割するにはどうすればよいですか?

PHP で複数行の文字列を確実に分割するにはどうすればよいですか?

Patricia Arquette
リリース: 2024-12-04 04:26:14
オリジナル
410 人が閲覧しました

How Can I Reliably Split a Multiline String in PHP?

PHP 文字列を改行文字で分割する

複数行の入力を扱う場合、文字列を個別の配列に分割する必要があるのが一般的です。線。この目的には PHP の展開関数を使用できますが、文字列を正確に分割するには正しい区切り文字が必要です。

explode('nr', $_POST['skuList']) を使用した最初の試みは失敗します。これは、改行文字が Windows スタイルのキャリッジ リターンとその後に続くライン フィード (rn) であると想定しているためです。ただし、オペレーティング システムと入力ソースによっては、改行文字が異なる場合があります。

ベスト プラクティス: PHP_EOL の使用

このシステム依存関係に対処するには、次の使用をお勧めします。 PHP 定数 PHP_EOL。この定数は現在のシステムの行末文字を表し、環境に関係なく文字列が一貫して分割されるようにします。

$skuList = explode(PHP_EOL, $_POST['skuList']);
ログイン後にコピー

注意: データのシステム依存性

PHP_EOL を使用するとコード システムが独立しますが、システム間でデータを移動する際の潜在的な問題に注意することが重要です。新しいシステムの PHP_EOL 定数は異なる可能性があり、保存されたデータが破損する可能性があります。これを回避するには、保存する前にデータを完全に解析してクリーンアップし、システム依存のコンポーネントを削除します。

ブラウザ固有の改行文字

この特定の使用例のコンテキストでは、文字列がブラウザから取得されていることに注意してください。ブラウザでは、オペレーティング システムに応じて異なる改行文字が使用されます。すべての可能性を処理するには、次の正規表現を使用できます:

$skuList = preg_split('/\r\n|\r|\n/', $_POST['skuList']);
ログイン後にコピー

この式は、考えられる改行文字のいずれかと一致し、ソースに関係なく文字列が正しく分割されるようにします。

以上がPHP で複数行の文字列を確実に分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート