ホームページ >バックエンド開発 >PHPチュートリアル >2D 配列を転置して、カンマ区切りの列、パイプ区切りの行文字列に変換するにはどうすればよいですか?
2D 配列を転置し、カンマ区切りの列とパイプ区切りの行を含む文字列に変換する
多次元配列が与えられた場合、transpose列を行に変換します。さらに、転置配列の文字列表現を生成します。各行はパイプ文字 ('|') で区切られ、各行内の要素はカンマ (,) で区切られます。
例:
次の 2D 配列を考えます:
01 03 02 15 05 04 06 10 07 09 08 11 12 14 13 16
必要な出力:
01,05,07,12|03,04,09,14|02,06,08,13|15,10,11,16
解決策:
このタスクは 2 つの手順で実行できます:
配列を転置する:
文字列表現を作成します:
JavaScript 実装:
<code class="javascript">// Transpose the array const transposedArray = originalArray.map((row, i) => row.map((el, j) => originalArray[j][i])); // Create the string representation const result = transposedArray.map(row => row.join(",")).join("|");</code>
PHP 実装:
<code class="php">// Transpose the array $transposedArray = array(); foreach ($originalArray as $row) { foreach ($row as $key => $value) { $transposedArray[$key][] = $value; } } // Create the string representation $result = array_map(function($row) { return implode(",", $row); }, $transposedArray); $result = implode("|", $result);</code>
以上が2D 配列を転置して、カンマ区切りの列、パイプ区切りの行文字列に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。