Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich leere Elemente beim Explodieren von Strings in PHP ausschließen?

Wie kann ich leere Elemente beim Explodieren von Strings in PHP ausschließen?

DDD
DDDOriginal
2024-12-05 14:39:11693Durchsuche

How Can I Exclude Empty Elements When Exploding Strings in PHP?

Leere Elemente beim Explodieren von Strings ausschließen

Die Explosionsfunktion von PHP ist ein vielseitiges Werkzeug zum Aufteilen eines Strings in ein Array von Teilstrings. Allerdings können manchmal leere Elemente zurückgegeben werden, wenn führende, nachgestellte oder aufeinanderfolgende Trennzeichen vorhanden sind. Dies kann problematisch sein, wenn mit Zeichenfolgen gearbeitet wird, die nicht leere Elemente erfordern.

Um dieses Problem zu beheben, ist es möglich, stattdessen die Funktion preg_split zu verwenden. preg_split verwendet reguläre Ausdrücke als Trennzeichen und kann so konfiguriert werden, dass leere Elemente ausgeschlossen werden.

Geänderte Funktion:

Eine modifizierte Version der Explosionsfunktion kann wie folgt zum Ausschließen definiert werden leer Elemente:

function different_explode($delimiter, $string, $limit = -1, $flags = 0) {
  return preg_split("@$delimiter@", $string, $limit, PREG_SPLIT_NO_EMPTY | $flags);
}

Verwendung:

Um diese modifizierte Funktion zu verwenden, übergeben Sie einfach das Trennzeichen, die Zeichenfolge und alle optionalen Parameter, wie Sie es mit der ursprünglichen Explosionsfunktion tun würden . Das folgende Beispiel zeigt, wie leere Elemente ausgeschlossen werden, wenn die Zeichenfolge „1/2//3/“ durch das Trennzeichen „/“ aufgeteilt wird:

$exploded = different_explode('/', '1/2//3/');

Dies führt zu einem Array, das nur die nicht leeren Elemente enthält Elemente:

array(3) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
}

Das obige ist der detaillierte Inhalt vonWie kann ich leere Elemente beim Explodieren von Strings in PHP ausschließen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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