Inhoudsopgave:
Video: Section 8 2024
Vaak kan het nuttig zijn in PHP om breek een string in een array, vooral bij het lezen van invoer uit een bestand voor HTML5 en CSS3 programmering. Hier zijn de twee verschillende manieren om dit te doen:
-
exploderen : exploderen neemt één parameter als een scheidingsteken en splitst de string in een array op basis van die ene parameter.
-
preg _ splitsen : Als u reguliere expressies nodig hebt, is het gebruik van preg_split de juiste keuze. split geeft u de mogelijkheid ingewikkelde stukken tekst op te nemen, te zoeken naar meerdere verschillende scheidingstekens die zijn opgeslagen in een reguliere expressie en deze op te splitsen in een array op basis van de scheidingstekens die u opgeeft.
exploderen werkt goed met CSV-bestanden (comma-separated value) en dergelijke, waarbij alle parameters waarop u de tekst wilt doorbreken hetzelfde zijn. preg_split werkt beter omdat er veel verschillende parameters zijn waar u de tekst wilt doorbreken of wanneer de parameter die u zoekt complex is.
Arrays maken met exploderen
Array maken met explode is zeer eenvoudig:
exploderen ("", $ theString);
De eerste waarde is de parameter waarop u de tekenreeks splitst. De tweede waarde is de tekenreeks die u in een array wilt splitsen. In dit voorbeeld zou de reeks op elke spatie worden opgesplitst. Je kunt alles wat je wilt als de split-parameter plaatsen.
Dus, als u de reeks hebt waarin u elk woord als een waarde in wilt opslaan, voert u de volgende code in:
exploderenGebruik van explode
php $ theString = "Twas brillig and the slithy toves"; $ theArray = explode ("", $ theString); print "n"; print_r ($ theArray); print "n"; ? >
Het scheidingsteken kan alles zijn wat u maar wilt. Als u te maken hebt met een CSV-bestand, waarbij elke waarde wordt gescheiden door een komma, ziet uw ontploffingsmethode er als volgt uit:
$ theArray = explode (",", $ theString);
Arrays maken met preg_split
preg_split is een beetje gecompliceerder. preg_split gebruikt reguliere expressies om een string in een array te splitsen, waardoor het een beetje langzamer kan worden dan exploderen.
preg_split lijkt precies op exploderen, maar in plaats van een teken tussen citaten kunt u alle tekens die u wilt splitsen tussen haakjes in de citaten zetten, of u kunt een gecompliceerde reguliere expressie gebruiken om te bepalen hoe de waarden zullen worden verdeeld.
Reguliere expressies werken hetzelfde in JavaScript en in PHP omdat beide talen hun reguliere expressietools hebben afgeleid van de oudere taal Perl. (Het gedeelte staat voor "Perl reguliere expressie.")
Een instantie waarbij u preg_split wilt gebruiken in plaats van exploderen, kan zijn wanneer u een e-mailadres verwerkt. Een standaard e-mailadres heeft stippen (.) En een at-teken (@). Als u wilt splitsen op een van deze tekens, kunt u het volgende doen:
preg_split. htmln"; ? >Preg_split
n"; print_r ($ theArray); print "
Bedenk dat reguliere expressies zijn ingesloten in het schuine streepje en de vierkante haakjes een van een aantal opties aangeven. U wilt splitsen op het at-teken of de periode. Vergeet niet om de periode op te geven met. omdat een gewone periode "elk karakter" betekent. "
preg_split werkt goed voor tijdstempels, e-mailadressen en andere dingen waarbij er meer dan één uniek scheidingsteken is waaraan u de tekenreeks wilt splitsen.
Eerdere versies van PHP hadden een functie met de naam split. Het leek veel op de functie preg_split, maar het gebruikte een andere syntaxis voor reguliere expressies. Bijna niemand heeft het gebruikt en het wordt niet langer ondersteund. Gebruik exploderen voor eenvoudige patronen en preg_split wanneer u de kracht van reguliere expressies nodig hebt.