php Separate Spaced Words innerhalb eines Strings

Häufig stellen Codierer fest, dass sie einen String in seine einzelnen Wörter aufteilen müssen. Wenn diese Wörter durch Leerzeichen getrennt sind, sind die Befehlsoptionen einfach.

Als ich kürzlich einen Suchcode zusammengehackt habe, musste ich alle Wörter aus dem Suchausdruck herausbrechen. Dafür gibt es mehrere Methoden. Ich gebe hier einen kurzen Überblick über die Stärken und Geschwindigkeiten der einzelnen Methoden.

Wenn alle Wörter durch ein Leerzeichen getrennt sind, kann das PHP verwendet werden explodieren Befehl. Durch die Vermeidung des regulären Ausdrucks ist dies die schnellste Methode.

$ words = explodieren (", $ string);

Die nächst schnellste Methode, preg_split, verwendet eine Perl-kompatible Syntax für reguläre Ausdrücke und verarbeitet mehrere Leerzeichen.

$ words = preg_split ('/ \ s + /', $ string);

Die letzte Option ist theoretisch langsamer als die bisherige Methode. Ab PHP 5.3.0 wurde der Teilt Der Befehl ist veraltet und sollte daher vermieden werden. Da auch die Syntax regulärer Ausdrücke verwendet wird, lassen sich mehrere Leerzeichen leicht handhaben.

$ words = split ('\ s +', $ string);