PHP 5.5.37 is released

spliti

(PHP 4 >= 4.0.1, PHP 5)

splitiScinde une chaîne en un tableau, grâce à une expression rationnelle

Avertissement

This function was DEPRECATED in PHP 5.3.0, and REMOVED in PHP 7.0.0.

Alternatives to this function include:

Description

array spliti ( string $pattern , string $string [, int $limit = -1 ] )

Scinde la chaîne string dans un tableau, par expression rationnelle.

Cette fonction est identique à split(), hormis le fait qu'elle ignore la casse pour les caractères alphabétiques.

Liste de paramètres

pattern

Expression rationnelle insensible à la casse.

Si vous voulez effectuer la césure avec un caractère qui est considéré comme spécial par les expressions rationnelles, vous devez d'abord l'échapper. Si vous pensez que la fonction spliti() (ou tout autre fonction regex) fait quelque chose de bizarre, lisez le fichier regex.7, inclus dans le sous-dossier regex/ de la distribution PHP. Ce fichier est au format man, vous devrez donc utiliser la commande man /usr/local/src/regex/regex.7 pour le lire.

string

La chaîne d'entrée.

limit

Si limit est défini, le tableau retourné contiendra un maximum de limit éléments, dont le dernier élément contient le reste de la chaîne string.

Valeurs de retour

Retourne un tableau de chaînes, dont chaque élément est une sous-chaîne de string, formée par la césure réalisée grâce l'expression rationnelle pattern.

S'il y a n occurrences de pattern, le tableau retourné contiendra n+1 éléments. Par exemple, s'il n'y a pas d'occurrence de pattern, un tableau avec un seul élément sera retourné. Évidemment, ceci est également vrai si la chaîne string est vide. Si une erreur survient, spliti() retourne FALSE.

Exemples

Scinder une chaîne en utilisant la lettre 'a' comme séparateur :

Exemple #1 Exemple avec spliti()

<?php
$string 
"aBBBaCCCADDDaEEEaGGGA";
$chunks spliti ("a"$string5);
print_r($chunks);
?>

L'exemple ci-dessus va afficher :

Array
(
  [0] =>
  [1] => BBB
  [2] => CCC
  [3] => DDD
  [4] => EEEaGGGA
)

Voir aussi

  • preg_split() - Éclate une chaîne par expression rationnelle
  • split() - Scinde une chaîne en un tableau, grâce à une expression rationnelle
  • explode() - Coupe une chaîne en segments
  • implode() - Rassemble les éléments d'un tableau en une chaîne

add a note add a note

User Contributed Notes 3 notes

up
0
vbelon at hotmail dot com
12 years ago
To split $cartes which contains data and tabulations:
Doesnt work :
$tab_cartes = split("\\t",$cartes );

But \t = char(9), so, works well:
$tab_cartes = split(Chr(9),$cartes);

Idem for :
\n = char(10)
\r = char(13)

Found in http://www.asp-magazine.com/fr/asp/blitz/blitz4.asp
up
-1
jeffmixpute
5 years ago
This example shows the use of spliti.
Here it splits the path of the server as it can be used further.

<?php

require_once 'Beispiel.php';
$seq = new Sequence();

$path = $_SERVER["PATH_INFO"];

echo
"PATH: ".$path."<br/>";
echo
"Request mode: ".$_SERVER["REQUEST_METHOD"]."<br/>";

$daten = spliti ("/", $path);

echo
"get-daten[1] ".$daten[1]."<br/>";

if(
$_SERVER["REQUEST_METHOD"]== "POST"){
  echo
"POST".$daten[1];
 
$seq->setzeSequence($daten[1], $_POST["xml"]);
}
elseif(
$_SERVER["REQUEST_METHOD"] == "DELETE"){
  echo
"DELETE".$daten[1];
 
$seq->loescheSequence($daten[1]);
}
elseif(
$_SERVER["REQUEST_METHOD"] == "GET"){

$antwort = $seq->holeSequence($daten[1]);
  echo
"antwort[0]: ".$antwort[0]."<br/>";
  foreach(
$antwort as $mes){
   echo
"mes ".$mes."<br/>";
   }
}

?>
up
-1
Anonymous
12 years ago
When using special characters such as the tab placeholder "\t" in the split function, be careful not to escape the slash by adding a slah in front of it. To signify a tab, new line or carriage return use only one slash in front of the character. For example:

$cartes= "one\ttwo\tthree";

$tab_cartes = split("\t",$cartes );

$items = count($tab_cartes);
for ($x = 0; $x < $items; $x++)
   { echo $tab_cartes[$x] . "\n"; }
To Top