ホームページ  >  記事  >  バックエンド開発  >  PHP でループを使用せずに文字列を多次元配列に変換するにはどうすればよいですか?

PHP でループを使用せずに文字列を多次元配列に変換するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-29 19:14:30694ブラウズ

How can I transform a string into a multidimensional array in PHP without using loops?

ループを使用しない PHP での多次元配列解析

PHP では、明示的なループを使用せずに文字列を多次元配列に分割することが賢明な方法で可能です。 PHP の配列関数の使用。

解決策:

次のコード スニペットは、「A,5|B,3|C,」という形式の文字列を変換する方法を示しています。 8" をループを使用せずに多次元配列に変換します:

<code class="php">$str = "A,5|B,3|C,8";

$a = array_map(
    function ($substr) {
        return explode(',', $substr);
    },
    explode('|', $str)
);

var_dump($a);</code>

説明:

  1. まず、文字列 "A,5|B,3|C" ,8" は、区切り文字 '|' を使用してexplode関数を使用して部分文字列の配列に分割されます。
  2. 次に、array_map 関数を使用して各部分文字列を反復処理し、区切り文字 ','。
  3. 結果の配列 $a には、入力文字列の多次元表現が含まれます。最初の次元は各部分文字列を表し、2 番目の次元は 2 つの値を保持します。

出力例:

array
  0 =>
    array
      0 => 'A'
      1 => '5'
  1 =>
    array
      0 => 'B'
      1 => '3'
  2 =>
    array
      0 => 'C'
      1 => '8'

注:

場合によっては、array_map は手動ループより高速になる可能性がありますが、注意することが重要です。まだ内部的にループが含まれているということです。ただし、関数によって提供される抽象化により、コード内で明示的にループする必要がなくなります。

以上がPHP でループを使用せずに文字列を多次元配列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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