str_replace

Hej
Hvis jeg nu vil lave en str_replace altså skifte en tekst ud med en anden - hvordan gør jeg så det.?
jeg kunne rigtigt godt tænke mig at eks skifte teksten "playstation 3" ud med en håndover forklaring om hvad det er - eller hvis man eks skriver "GTA 5" så kommer der også en "handover" tekst

Hej @gjessing
Alt efter brugen er str_replace i PHP nu meget simpelt bygget op. I mit eksempel nedenunder kan du se at jeg giver str_replace en tekst. ($gammeltekst) Og efter at den så køre min tekst igennem, spytter jeg den nye tekst ud. ($nytekst)
Jeg håber at det gav dig lidt mere info omkring brugen. Jeg er dog ikke sikker på at det er præcist det du vil have, som i dit eksempel. Men det er præcis sådan at str_replace virker.
Du kan også læse endnu mere (på engelsk) omkring netop str_replace funktionen på PHP's officiele dokumentation: http://php.net/manual/en/function.str-replace.php
<?php
$gammeltekst = "Dette er min tekst med ordet blå inde i."
$nytekst = str_replace("blå", "rød", $gammeltekst);
echo $nytekst // echo'er den nye tekst hvor blå er blevet til rød.
?>
Hvis min kode imod forventning ikke giver dig den fornødene viden, så må du endelig sige til.
Hav en fortsat god aften.
@dhh
d. 24.02.2016 kl. 20:25 Med venlige hilsner
Daniel H. Hemmingsen (@dhh)

Ikke helt rigtigt, jeg søger efter ordet "blå" og erstatter det med "rød". Men du har helt ret i, at du ikke behøver at lave et tjek - for hvis ordet ikke findes, så findes det ikke. @simonpedersen
Jeg har lavet et opdateret (og meget simpelt) forsøg på at skifte mere end bare et enkelt ord ud - også hvis ordet skulle være der flere gange. Jeg håber at det hjælper. @gjessing
Koden er blevet kommenteret ud - og burde give dig de informationener du behøver. (Der findes mange måder at gøre lige præcis det du vil på her. Så tag det som et simpelt eksempel.)
<?php
// Eksemepel: Vi leder efter flere muligheder, ikke kun eén - ved hjælp af arrays
// Teksten her er bare dummy data, jeg byggede op for at teste.
$ProfilData['html'] = '<h3>Eksempel på HTML der redigeres med str_replace:</h3>';
$ProfilData['html'] .= '<p>(Hold musen over linksene for at se den redigeret tekst, eller se nedenunder.)</p>';
$ProfilData['html'] .= '<p><a href="#" title="xbox360">XBOX 360</a></p>';
$ProfilData['html'] .= '<p>Beskrivelse: xbox360</p>';
$ProfilData['html'] .= '<p><a href="#" title="ps3">PlayStation 3</a></p>';
$ProfilData['html'] .= '<p>Beskrivelse: ps3</p>';
$ProfilData['html'] .= '<p><a href="#" title="wii">Wii</a></p>';
$ProfilData['html'] .= '<p>Beskrivelse: wii</p>';
// Ord du vil søge efter
$soegeOrd = array(
'xbox360',
'ps3',
'wii'
);
// Beskrivelser du vil benytte i stedet for de søgte ord
$beskrivelser = array(
'XBOX 360 er en spilkonsol lavet af Microsoft.',
'PlayStation 3 er en spilkonsol lavet af Sony.',
'Wii er en spilkonsol lavet af det Japanske Nintendo.'
);
// Vi leder efter xbox/ps3/wii i vores tekst og udskifter det med $beskrivelser
$ProfilData['html'] = str_replace(
$soegeOrd, // Ord der søges efter
$beskrivelser, // Erstattes med følgende tekst
$ProfilData['html'] // Dataen/teksten som der søges i
);
echo $ProfilData['html']; // Skriv den nu redigeret HTML ud
?>
Følgende resultat burde du få:
@dhh
d. 26.02.2016 kl. 08:55 Med venlige hilsner
Daniel H. Hemmingsen (@dhh)