substr_replace

(PHP 4, PHP 5)

substr_replaceRemplace un segment dans une chaîne

Description

mixed substr_replace ( mixed $string , mixed $replacement , mixed $start [, mixed $length ] )

substr_replace() remplace un segment de la chaîne string par la chaîne replacement. Le segment est délimité par start et éventuellement par length.

Liste de paramètres

string

La chaîne d'entrée.

Un tableau de chaînes de caractères peut être fourni, et dans ce cas, les remplacements surviendront sur chacune des chaînes. Dans cette situation, les paramètres replacement, start length doivent être fournis soit comme valeurs scalaires à appliquer sur chaque chaîne, ou comme tableaux où l'élément du tableau correspondant sera utilisé pour chaque chaîne d'entrée.

replacement

La chaîne de remplacement.

start

Si start est positif, le remplacement se fera à partir du caractère numéro start dans string.

Si start est négatif, le remplacement se fera à partir du start-ième caractère en partant de la fin de la chaîne string.

length

Si length est fourni et positif, il représentera la longueur du segment de code remplacé dans la chaîne string. S'il est négatif, il représentera la longueur du segment remplacé, mais compté dans l'ordre inverse de la chaîne string. S'il est omis, il prendra la valeur par défaut de la taille de la chaîne, et remplacera tout jusqu'à la fin de la chaîne string. Bien sûr, si length vaut 0, alors, cette fonction aura comme effet d'insérer replacement dans string à la position start donnée.

Valeurs de retour

La chaîne résultante est retournée. Si le paramètre string est un tableau, alors un tableau sera retourné.

Historique

Version Description
4.3.3 Tous les paramètres acceptent maintenant les tableaux.

Exemples

Exemple #1 Exemple avec substr_replace()

<?php
$var = 'ABCDEFGH:/MNRPQR/';
echo "Original : $var\n";

// Remplace toute la chaîne $var par 'bob'.
echo substr_replace($var, 'bob', 0) . "<br />\n";
echo substr_replace($var, 'bob', 0, strlen($var)) . "<br />\n";

// Insert 'bob' au début de la chaîne
echo substr_replace($var, 'bob', 0, 0) . "<br />\n";

// Remplace la séquence 'MNRPQR' par 'bob'.
echo substr_replace($var, 'bob', 10, -1) . "<br />\n";
echo substr_replace($var, 'bob', -7, -1) . "<br />\n";

// Efface la séquence 'MNRPQR' de $var.
echo substr_replace($var, '', 10, -1) . "<br />\n";
?>

Exemple #2 Utilisation de substr_replace() pour remplacer plusieurs chaînes en une seule fois

<?php
$input = array('A: XXX', 'B: XXX', 'C: XXX');

// Un cas simple : remplacer XXX dans chaque chaîne par YYY.
echo implode('; ', substr_replace($input, 'YYY', 3, 3))."\n";

// Un cas plus complexe où chaque remplacement est différent.
$replace = array('AAA', 'BBB', 'CCC');
echo implode('; ', substr_replace($input, $replace, 3, 3))."\n";

// Remplace un nombre différent de caractères à chaque fois.
$length = array(1, 2, 3);
echo implode('; ', substr_replace($input, $replace, 3, $length))."\n";
?>

L'exemple ci-dessus va afficher :

A: YYY; B: YYY; C: YYY
A: AAA; B: BBB; C: CCC
A: AAAXX; B: BBBX; C: CCC

Notes

Note: Cette fonction gère les chaînes binaires.

Voir aussi

LoadingChargement en cours