Using str_replace multiple times on the same string – Here in this article, we will share some of the most common and frequently asked about PHP problem in programming with detailed answers and code samples. There’s nothing quite so frustrating as being faced with PHP errors and being unable to figure out what is preventing your website from functioning as it should like php and str-replace . If you have an existing PHP-based website or application that is experiencing performance issues, let’s get thinking about Using str_replace multiple times on the same string.
I’m looping through a title from a table so it’s essentially something along these lines.
foreach($c as $row){
echo string_shorten($row['title']);
}
What I’m doing is trying is a switch statement that would switch between what I want it to search for and once it’s found replace it with what I choose in the str_replace:
function string_shorten($text){
switch(strpos($text, $pos) !== false){
case "Hi":
return str_replace('Hi','Hello', $text);
break;
}
}
Any suggestions or possible alternatives would be appreciated. It feels like I’m really close but not quite.
Solution :
As you can read in the manual for str_replace()
mixed
str_replace
( mixed$search
, mixed$replace
, mixed$subject
[, int&$count
] )
as well as this example
// Provides: You should eat pizza, beer, and ice cream every day
$phrase = "You should eat fruits, vegetables, and fiber every day.";
$healthy = array("fruits", "vegetables", "fiber");
$yummy = array("pizza", "beer", "ice cream");
$newphrase = str_replace($healthy, $yummy, $phrase);
This means that you could use something like the following
$search = array('Hi', 'Heyo', 'etc.');
$replace = array('Hello', 'Hello', '');
$str = str_replace($search, $replace, $str);