Manuel PHP
Précédent |  | Suivant

# split

(PHP 3, PHP 4, PHP 5)

split -- Scinde une chaîne en un tableau, grâce à une expression rationnelle

## Description

array split ( string pattern, string string [, int limit] )

> Astuce : preg_split(), qui utilise la syntaxe des expressions rationnelles compatibles PERL, est une alternative plus rapide à split(). Si vous n'avez pas besoin de la puissance des expressions rationnelles, il est plus rapide d'utiliser explode(), qui n'utilise pas le moteur d'expressions rationnelles.

split() retourne un tableau de chaînes : chacune d'entre elle est une sous-chaîne de `string` délimitée par les occurrences trouvées de l'expression rationnelle `pattern`. Si `limit` est défini, le tableau retourné contiendra un maximum de `limit` éléments avec le dernier élément contenant le reste de la chaîne `string`. Si une erreur survient, retourne `FALSE`.

Pour lire les 5 premiers champs d'une ligne du fichier `/etc/passwd`:

Exemple 1. Exemple avec split()

`<?php list($user, $pass, $uid, $gid, $extra)= split (":", $passwd_line, 5); ?>`

S'il y a `n` occurrences de `pattern`, le tableau retourné contiendra ``n`+1` éléments. Par exemple, s'il n'y a aucune occurrence de `pattern`, un tableau d'un seul élément sera retourné. Bien sûr, cela reste vrai si `string` est une chaîne vide.

Pour analyser une date qui est délimitée par des /, des points ou des tirets :

Exemple 2. Exemple avec split()

`<?php // Les délimiteurs peuvent être des tirets, points ou slash $date = "04/30/1973"; list($month, $day, $year) = split('[/.-]', $date); echo "Month: $month; Day: $day; Year: $year<br />\n"; ?>`

Pour les utilisateurs qui recherchent le moyen d'émuler la commande Perl @chars = split('', $str), voyez la fonction preg_split() ou la fonction str_split().

Notez aussi que `pattern` est une expression rationnelle. Si vous voulez utiliser n'importe quel caractère spécial des expressions rationnelles, vous devez les échapper. Si vous pensez que split() (ou toute autre expression rationnelle) se comporte bizarrement, lisez d'abord le fichier `regex.7`, inclus dans le dossier `regex/` de la distribution PHP . Il est au format manpage, et vous pourrez le lire avec une commande telle que man /usr/local/src/regex/regex.7.

Voir aussi preg_split(), spliti(), str_split(), explode(), implode(), chunk_split() et wordwrap().

Précédent | Sommaire | Suivant
eregi | Niveau supérieur | spliti