Jag gör en förändring i en text genom att byta ut en viss sträng mot en annan genom att använda str_replace(). Finns flera delar i texten som matchar argumenten så kommer ju alla bytas ut. Finns det något enkelt sätt att ta reda på hur många gånger strängen byts ut?
Rörigt? Jag gör ett litet exempel.
Jag har texten Det är äckligt med banan banan.
Här vill jag byta ut ordet banan mot ***** (fem stjärnor). Två utbyten kommer ske eftersom banan finns representerat två gånger. Har jag istället texten Det är äckligt med banan banan banan så kommer tre byten att ske.
function bort_med_bananer(&$s){
$antal_bananer = preg_match_all('/banan/', $s, $garbage);
$s = str_replace('banan', '*****', $s);
return $antal_bananer;
}
$text = 'Vicken tur att du köpte två bananer bananer, du haru en å eta också!';
$n = bort_med_bananer($text);
echo "Vi har tatt bort $n förekomster av ordet 'banan' i strängen '$text'";
------------------ Vaddå HTLM design? Jag e UTVECKLARE för fan! /mrblonde