2013-07-23 11 views
19

ich die folgende Aussage habe, die vor dem PHP fein gearbeitet 5.3 die Split-Funktion:Veraltet: Funktionsaufteilung() ist veraltet. Wie behebe ich diese Aussage?

$command = split (" ", $tag[1]); 

Nach PHP Upgrade 5.3, erhalte ich die Veraltete Warnung:

Deprecated: Function split() is deprecated. 
+0

zu verwenden Haben Sie in der Dokumentation suchen auf [ 'split()'] (http://php.net/split)? In diesem Fall benötigen Sie ['explode()'] (http://php.net/explode). –

Antwort

37

Verwendung explode:

$command = explode(" ", $tag[1]); 

Dies ist die Standardlösung für diesen Fall.

Wenn Sie für einen regulären Ausdruck (und nicht für etwas Einfaches wie ein Leerzeichen) suchen müssen, verwenden Sie preg_split. Es ist langsamer als explode, also gibt es keinen Grund, es zu benutzen, es sei denn Sie benötigen eine Regex.

Um das Gegenteil zu tun (verbinden Array-Elemente in eine Zeichenfolge), verwenden Sie implode.

2

Von this Seite:

Tip

split() als PHP 5.3.0 veraltet. preg_split() ist die vorgeschlagene Alternative zu dieser Funktion. Wenn Sie nicht die Leistung von regulären Ausdrücken benötigen, ist es schneller, explode() zu verwenden, die den Overhead des regulären Ausdrucksmoduls nicht verursacht.

Wenn Sie sich in "" aufteilen, könnten Sie die Explosion als eine bessere Alternative betrachten.

4

Nun das erste, was jemand tun sollte, ist die Überprüfung der Dokumenation: split

Es wird empfohlen preg_split oder explode