Arrays von rechts nach links auflösen: Letztes Trennzeichen aufteilen
In PHP wird die Funktion „explosivieren“ häufig zum Aufteilen von Zeichenfolgen basierend auf verwendet angegebenen Trennzeichen. Wenn Sie eine Zeichenfolge jedoch nur beim letzten Vorkommen eines bestimmten Trennzeichens teilen müssen, kann es zu Mehrdeutigkeiten kommen.
Stellen Sie sich beispielsweise das folgende Szenario vor:
<code class="php">$split_point = ' - '; $string = 'this is my - string - and more';</code>
Wenn ja Wenn Sie explosion() direkt auf diese Zeichenfolge anwenden, erhalten Sie das folgende Ergebnis:
<code class="php">$item[0] = 'this is my'; $item[1] = 'string - and more';</code>
Dies ist jedoch nicht die gewünschte Ausgabe, da wir nur bei der zweiten Instanz des Trennzeichens aufteilen möchten. Um dies zu erreichen, können wir einen etwas anderen Ansatz mit der Funktion strrev() verwenden.
<code class="php">$split_point = ' - '; $string = 'this is my - string - and more'; $result = array_map('strrev', explode($split_point, strrev($string)));</code>
So funktioniert das:
Dieser Ansatz liefert die folgende Ausgabe:
<code class="php">array ( 0 => 'and more', 1 => 'string', 2 => 'this is my', )</code>
Durch Umkehren der Zeichenfolge und anschließendes Teilen wandeln wir die Suche im Wesentlichen in eine Links-nach-Suche um -rechte Operation vom Ende der Zeichenfolge aus, sodass wir die letzte Instanz des Trennzeichens erfassen können.
Das obige ist der detaillierte Inhalt vonSo explodieren Sie Arrays von rechts nach links: Aufteilen am letzten Trennzeichen in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!