Remplacer la première occurrence d'une chaine

Eléphanteau du PHP | 14 Messages

21 sept. 2015, 13:12

Bonjour,

Je galère depuis 2h et je ne trouve pas de solution.
Je souhaite remplacer $remplace situé au début de $chaine par un mot.

Code : Tout sélectionner

str_replace (^$remplace, 'mot', $chaine);
Merci pour votre aide

Eléphanteau du PHP | 14 Messages

21 sept. 2015, 13:38

J'ai essayé aussi :

Code : Tout sélectionner

str_replace (strpos($chaine, $remplace), 'mot', $chaine);

ynx
Mammouth du PHP | 586 Messages

21 sept. 2015, 16:05

Salut,

Pour remplacer uniquement la première occurrence d'une chaine, tu peux utiliser le traitement suivant :
$pos = strpos($haystack,$needle);
if ($pos !== false) {
    $newstring = substr_replace($haystack,$replace,$pos,strlen($needle));
}
Source : http://stackoverflow.com/questions/1252 ... irst-match

Bonne journée