Heim  >  Artikel  >  Backend-Entwicklung  >  Eine Erklärung von Problemen, die Anfänger leicht übersehen können, wenn sie PHP zum Teilen von Zeichenfolgen mithilfe von Explode verwenden

Eine Erklärung von Problemen, die Anfänger leicht übersehen können, wenn sie PHP zum Teilen von Zeichenfolgen mithilfe von Explode verwenden

jacklove
jackloveOriginal
2018-06-09 09:44:342236Durchsuche

1. Beschreibung der Explosionsmethode

Die Explosionsmethode kann eine Zeichenfolge basierend auf einer bestimmten Zeichenfolge als Grenzpunkt in ein Array aufteilen.

array explode ( string $delimiter , string $string [, int $limit ] )

Gibt ein aus Strings bestehendes Array zurück. Jedes Element ist ein Teilstring eines Strings, getrennt durch das String-Trennzeichen als Grenzpunkt.

Parameterbeschreibung:
Trennzeichen
Das Trennzeichen an der Grenze.

Zeichenfolge
Eingabezeichenfolge

Limit
Wenn der Grenzwertparameter festgelegt ist und es sich um eine positive Zahl, das zurückgegebene Array enthält höchstens begrenzte Elemente und das letzte Element enthält den Rest der Zeichenfolge. Wenn der Grenzwertparameter eine
negative Zahl ist, werden alle Elemente außer den letzten -limit-Elementen zurückgegeben. Wenn der Grenzwert
0 ist, wird er als 1 behandelt.

2. Beispiel

Verwenden, Zeichenfolge teilen

<?php$str = &#39;1,2,3,4,5,6,7,8,9&#39;;$arr = explode(&#39;,&#39;, $str);echo &#39;<pre class="brush:php;toolbar:false">&#39;;
print_r($arr);echo &#39;
';?>

Ausgabe:

Array(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6
    [6] => 7
    [7] => 8
    [8] => 9)

Verwenden, Zeichenfolge teilen, begrenzen ist eine positive Zahl

<?php$str = &#39;1,2,3,4,5,6,7,8,9&#39;;$arr = explode(&#39;,&#39;, $str, 5);echo &#39;<pre class="brush:php;toolbar:false">&#39;;
print_r($arr);echo &#39;
';?>

Ausgabe:

Array(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5,6,7,8,9)

Zum Teilen der Zeichenfolge verwenden, limit ist eine negative Zahl

<?php$str = &#39;1,2,3,4,5,6,7,8,9&#39;;$arr = explode(&#39;,&#39;, $str, -3);echo &#39;<pre class="brush:php;toolbar:false">&#39;;
print_r($arr);echo &#39;
';?>

Ausgabe:

Array(
    [0] => 1
    [1] => 2
    [2] => 3
    [3] => 4
    [4] => 5
    [5] => 6)

wird zum Teilen der Zeichenfolge verwendet, und der Grenzwert ist 0

<?php$str = &#39;1,2,3,4,5,6,7,8,9&#39;;$arr = explode(&#39;,&#39;, $str,0);echo &#39;<pre class="brush:php;toolbar:false">&#39;;
print_r($arr);echo &#39;
';?>

Ausgabe:

Array(
    [0] => 1,2,3,4,5,6,7,8,9)

3. Probleme, die leicht zu ignorieren sind

Im Allgemeinen wird Explode verwendet, um Daten wie ID-Strings aufzuteilen

<?php$ids = &#39;1,2,3,4&#39;;$data = explode(&#39;,&#39;, $ids);if($data){    foreach($data as $k=>$v){        // do sth
    }
}?>

Unter normalen Umständen sind IDs nicht leer, und Sie werden keine Probleme finden, wenn Sie sich den Code ansehen, da dieser vorhanden ist ist ein Urteil, wenn (Daten) im Allgemeinen angenommen werden, dass es sich um eine leere Handhabung handelt.

Die tatsächliche Situation ist jedoch, dass ids = null ist, die Daten jedoch nicht leer sind, was zu Problemen mit dem in foreach ausgeführten Code führt.

<?php$ids = null;$data = explode(&#39;,&#39;, $ids);if($data){
    print_r($data);
}else{    echo &#39;null&#39;;
}?>

Da ids=null ist, verwenden Sie explosion zum Teilen, und das resultierende Array ist

Array ( [0] => ) anstelle von Array().

Es wird daher davon ausgegangen, dass es geändert werden muss, um Probleme zu vermeiden

d8d2503db740dae030e72ac444eb1af8$v){        // do sth
    }
}?>
In diesem Artikel werden die Probleme erläutert, die Anfänger leicht übersehen können, wenn sie Explode zum Teilen von Zeichenfolgen in PHP verwenden. Weitere verwandte Inhalte finden Sie hier. Bitte achten Sie auf die chinesische PHP-Website.

Verwandte Empfehlungen:

Erläuterung der zweispaltigen Datenmethode in der MySQL-Austauschtabelle

So generieren Sie 0~1 Zufallswerte über PHP Dezimalmethode

Anweisungen zur Verwendung der MySQL-Zeitstempelformatierungsfunktion from_unixtime

Das obige ist der detaillierte Inhalt vonEine Erklärung von Problemen, die Anfänger leicht übersehen können, wenn sie PHP zum Teilen von Zeichenfolgen mithilfe von Explode verwenden. 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