Wie transponiere ich ein 2D-Array und konvertiere es in eine durch Kommas getrennte Spalte und durch Pipes getrennte Zeilenzeichenfolge?

Susan Sarandon
Freigeben: 2024-10-28 12:49:02
Original
624 Leute haben es durchsucht

How to Transpose a 2D Array and Convert it to a Comma-Separated Column, Pipe-Separated Row String?

Transponieren eines 2D-Arrays und Konvertieren in einen String mit durch Kommas getrennten Spalten und durch Pipes getrennten Zeilen

Transponieren Sie bei einem gegebenen mehrdimensionalen Array es, um Spalten in Zeilen umzuwandeln. Generieren Sie außerdem eine Zeichenfolgendarstellung des transponierten Arrays, wobei jede Zeile durch ein Pipe-Zeichen ('|') getrennt ist und Elemente innerhalb jeder Zeile durch Kommas (,) getrennt sind.

Beispiel:

Betrachten Sie das folgende 2D-Array:

01 03 02 15
05 04 06 10
07 09 08 11
12 14 13 16
Nach dem Login kopieren

Gewünschte Ausgabe:

01,05,07,12|03,04,09,14|02,06,08,13|15,10,11,16
Nach dem Login kopieren

Lösung:

Diese Aufgabe kann in zwei Schritten erledigt werden:

  1. Transponieren Sie das Array:

    • Erstellen Sie ein neues Array wobei die ursprünglichen Zeilen zu Spalten werden und umgekehrt.
  2. Erstellen Sie die String-Darstellung:

    • Iterieren Sie über jede Zeile des transponierten Arrays.
    • Verbinden Sie die Elemente jeder Zeile mit Kommas (,).
    • Verbinden Sie die Zeilen mit einem Pipe-Zeichen (|).

JavaScript-Implementierung:

<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>
Nach dem Login kopieren

PHP-Implementierung:

<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>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie transponiere ich ein 2D-Array und konvertiere es in eine durch Kommas getrennte Spalte und durch Pipes getrennte Zeilenzeichenfolge?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!