PHP でループを使用せずに \'A,5|B,3|C,8\' のような文字列を多次元配列に分割するにはどうすればよいですか?
Oct 30, 2024 am 02:10 AMPHP でループを使用せずに文字列を多次元配列に分割する
PHP で文字列を操作する場合、文字列を小さなチャンクに分割したり、特定のデータを抽出します。一般的なタスクの 1 つは、文字列を多次元配列に分割することです。これは、情報の整理と構造化に役立ちます。
質問:
「A」のような文字列を分割するにはどうすればよいですか? ,5|B,3|C,8" をループを使用せずに PHP の多次元配列に変換しますか?
解決策:
質問ではループを回避することを示唆していますが、文字列を分割します通常、何らかの反復が必要になります。ただし、PHP の組み込み関数を活用してプロセスを合理化することはできます。
次のコードを考えてみましょう:
<code class="php"><?php $str = "A,5|B,3|C,8"; $a = array_map( function ($substr) { return explode(',', $substr); }, explode('|', $str) ); var_dump($a); ?></code>
このコードでは、array_map を使用し、explode を使用して、明示的に指定せずに目標を達成します。ループします。その仕組みは次のとおりです。
- explode('|', $str) は、元の文字列を部分文字列の配列に分割し、パイプ (|) 区切り文字で区切ります。
- array_map次に、匿名関数 (fn) を各部分文字列に適用します。この関数は、explode(',', $substr) を使用して、部分文字列をコンマ (,) 区切り文字で配列にさらに分割します。
これにより、効果的に多次元配列が作成されます。各部分配列は次の結果になります。元の部分文字列をカンマで分割します。
結果の $a 変数には、次のような配列が含まれます:
array 0 => array 0 => string 'A' (length=1) 1 => string '5' (length=1) 1 => array 0 => string 'B' (length=1) 1 => string '3' (length=1) 2 => array 0 => string 'C' (length=1) 1 => string '8' (length=1)
このメソッドを使用すると、手動で記述することなく文字列を効率的に多次元配列に分割できます。ループします。
以上がPHP でループを使用せずに \'A,5|B,3|C,8\' のような文字列を多次元配列に分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

人気の記事

人気の記事

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











LaravelのバックエンドでReactアプリを構築する:パート2、React
