ホームページ >バックエンド開発 >PHPチュートリアル >preg_split とexplodeは、コンテンツコードを保存するためのテキストエリアの分割を実装します。
本日緊急のバグが発生しており、バックグラウンドでホワイトリストが設定された後、モバイルアプリが無効になり、コンテンツが表示されたままになると言われています。メールを受け取った後、プロセスを実行したところ、テキストエリアにバックグラウンド設定のホワイトリストが 1 行に 1 つずつ設定されていることがわかりました。コードをもう一度見てみると、explode 関数を使用して区切られており、区切り文字が rn になっていることがわかりました。 。この記事では、PHP が preg_split とexplodeを使用してテキストエリアを分割してコンテンツを保存する方法を主に説明し、preg_splitとexplode関数の関数と使用テクニック、およびテキスト文字列分割プロセスにおける関連する注意事項を分析する例をまとめています。
コードはおおよそ次のとおりです
explode('\r\n', $val);
その後、開発マシンでテストしたところ、これではデータベースに格納されているテキストエリアの内容がまったく分割されないことがわかり、マニュアルを見て、非常に便利な関数 preg_split を見つけました
$str = '1 2 3 4 5'; print_r(preg_split("/\n/",$str)); /* Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 ) */
[更新]
午後に同僚に気づかせてもらった後、区切り文字に問題があることがわかりました。Chrome と Firefox ブラウザでは、textarea に改行文字が含まれているためです。 n、IE では rn 改行文字があるため、str_replace を使用して置換しました
$str = '1 2 3 4 5'; print_r(explode("\n", str_replace("\r\n", "\n", $str))); Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
関連する推奨事項:
PHP は preg_split() を使用して特殊文字 (メタキャラクターなど) を分割して分析します
PHP関数の正しい使い方preg_split_PHPチュートリアル
以上がpreg_split とexplodeは、コンテンツコードを保存するためのテキストエリアの分割を実装します。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。