Strings and Text
String Replace
str_replace builds a new string with matching text swapped out.
replacement
String replacement does not modify the original literal; it returns a changed string.
String Replace
string_replace.php
Replay: real traced execution (multi-file project)
<?php
$word = "green";
$template = "red green red";
$changed = str_replace("green", $word, $template);
$same = $changed === $template ? "same" : "changed";
echo "word=" . $word . "\n";
echo "changed=" . $changed . "\n";
echo "same=" . $same . "\n";
<?php
$word = "blue";
$template = "red green red";
$changed = str_replace("green", $word, $template);
$same = $changed === $template ? "same" : "changed";
echo "word=" . $word . "\n";
echo "changed=" . $changed . "\n";
echo "same=" . $same . "\n";
<?php
$word = "gold";
$template = "red green red";
$changed = str_replace("green", $word, $template);
$same = $changed === $template ? "same" : "changed";
echo "word=" . $word . "\n";
echo "changed=" . $changed . "\n";
echo "same=" . $same . "\n";
$word ← green, $template ← red green red, $changed ← red green red
1<?php2$word→ green = "green"; //@word="blue", "gold"3$template→ red green red = "red green red";4$changed→ red green red = str_replace("green", $wordgreen, $templatered green red);5$same→ same = $changedred green red === $templatered green red ? "same" : "changed";67echo "word=" . $wordgreen . "\n";8echo "changed=" . $changedred green red . "\n";9echo "same=" . $samesame . "\n";outputword=green changed=red green red same=same
$word ← blue, $template ← red green red, $changed ← red blue red
1<?php2$word→ blue = "blue";3$template→ red green red = "red green red";4$changed→ red blue red = str_replace("green", $wordblue, $templatered green red);5$same→ changed = $changedred blue red === $templatered green red ? "same" : "changed";67echo "word=" . $wordblue . "\n";8echo "changed=" . $changedred blue red . "\n";9echo "same=" . $samechanged . "\n";outputword=blue changed=red blue red same=changed
$word ← gold, $template ← red green red, $changed ← red gold red
1<?php2$word→ gold = "gold";3$template→ red green red = "red green red";4$changed→ red gold red = str_replace("green", $wordgold, $templatered green red);5$same→ changed = $changedred gold red === $templatered green red ? "same" : "changed";67echo "word=" . $wordgold . "\n";8echo "changed=" . $changedred gold red . "\n";9echo "same=" . $samechanged . "\n";outputword=gold changed=red gold red same=changed