Inhaltsverzeichnis:
- Wie man Arrays mit explode erstellt
- explodieren
- Das Erstellen von Arrays mit preg_split
- Verwendung von preg_split
Video: Lektion 40: Text (String) - Array INNERHALB einer function() 2024
Oft kann es in PHP nützlich sein, Brechen Sie einen String in ein Array, insbesondere beim Lesen von Eingaben aus einer Datei für die HTML5- und CSS3-Programmierung. Hier sind die zwei verschiedenen Möglichkeiten, dies zu tun:
-
explode : explode nimmt einen Parameter als Trennzeichen und teilt den String auf der Grundlage dieses einen Parameters in ein Array auf.
-
preg _ split : Wenn Sie reguläre Ausdrücke benötigen, ist die Verwendung von preg_split der richtige Weg. split ermöglicht es Ihnen, komplizierte Textabschnitte zu verwenden, nach mehreren verschiedenen Trennzeichen zu suchen, die in einem regulären Ausdruck gespeichert sind, und es in ein Array zu unterteilen, das auf den von Ihnen angegebenen Trennzeichen basiert.
explode funktioniert gut mit CSV-Dateien (Comma-Separated Value) und ähnlichen Dateien, bei denen alle Parameter, die den Text aufbrechen sollen, identisch sind. preg_split funktioniert besser, wenn es viele verschiedene Parameter gibt, bei denen Sie den Text aufbrechen möchten oder wenn der Parameter, nach dem Sie suchen, komplex ist.
Wie man Arrays mit explode erstellt
Die Array-Erzeugung mit explode ist sehr einfach:
explodieren ("", $ theString);
Der erste Wert ist der Parameter, auf dem Sie die Zeichenfolge aufteilen. Der zweite Wert ist die Zeichenkette, die Sie in ein Array aufteilen möchten. In diesem Beispiel würde der String in jedem Space aufgeteilt werden. Sie können alles, was Sie wollen, als Split-Parameter verwenden.
Wenn Sie also die Zeichenfolge haben, in der Sie jedes Wort als Wert speichern möchten, geben Sie den folgenden Code ein:
explodierenexplodieren
php $ theString = "Twas brillig und die slithy toves"; $ theArray = explode ("", $ theString); drucken "n"; print_r ($ theArray); drucken "n"; ? >
Der Begrenzer kann beliebig sein. Wenn Sie es mit einer CSV-Datei zu tun haben, in der jeder Wert durch ein Komma getrennt ist, könnte Ihre Explode-Methode folgendermaßen aussehen:
$ theArray = explode (",", $ theString);
Das Erstellen von Arrays mit preg_split
preg_split ist etwas komplizierter. preg_split verwendet reguläre Ausdrücke, um eine Zeichenkette in ein Array aufzuteilen, wodurch es etwas langsamer als explodiert werden kann.
preg_split sieht genauso aus wie explodieren, aber statt eines Zeichens innerhalb von Zitaten können Sie alle Zeichen, die Sie aufteilen wollen, in Klammern innerhalb der Zitate plazieren, oder Sie können einen komplizierten regulären Ausdruck verwenden, um zu bestimmen, wie die Werte aufgeteilt werden.
Reguläre Ausdrücke funktionieren in JavaScript und PHP genauso, da beide Sprachen ihre regulären Ausdruckswerkzeuge von der älteren Sprache Perl ableiten. (Der Teil steht für "Perl regulärer Ausdruck.")
Eine Instanz, in der Sie preg_split verwenden möchten anstatt zu explodieren, könnte bei der Verarbeitung einer E-Mail-Adresse sein. Eine einfache E-Mail-Adresse hat Punkte (.) Und ein at-Zeichen (@). Um eines dieser Zeichen zu teilen, können Sie Folgendes tun:
preg_split. htmlVerwendung von preg_split
php $ theString = "joe @ irgendwo. net"; $ theArray = preg_split ("/[@.]/", $ theString); drucken "n"; print_r ($ theArray); drucken "n"; ? >
Erinnern Sie sich daran, dass reguläre Ausdrücke im Schrägstrich eingeschlossen sind und die eckigen Klammern eine von mehreren Optionen angeben. Sie möchten entweder das AT-Zeichen oder die Periode teilen. Denken Sie daran, den Zeitraum mit anzugeben. denn eine gewöhnliche Periode bedeutet "irgendein Charakter. "
preg_split eignet sich gut für Zeitstempel, E-Mail-Adressen und andere Dinge, bei denen es mehr als nur ein eindeutiges Trennzeichen gibt, für das Sie die Zeichenfolge aufteilen möchten.
Frühere PHP-Versionen hatten eine Funktion namens split. Es ähnelte der Funktion preg_split, verwendete jedoch eine andere reguläre Ausdruckssyntax. Kaum jemand hat es benutzt, und es wird nicht mehr unterstützt. Verwenden Sie explode für einfache Muster und preg_split, wenn Sie die Leistung regulärer Ausdrücke benötigen.