Summary: in this tutorial, you’ll learn how to use the PHP str_replace() function to replace all occurrences of a substring with a new string
Introduction to the PHP str_replace() function #
The PHP str_replace() function returns a new string with all occurrences of a substring replaced with another string.
The following shows the syntax of the str_replace() function:
str_replace (
array|string $search ,
array|string $replace ,
string|array $subject ,
int &$count = null
) : string|arrayCode language: PHP (php)The str_replace() has the following parameters:
- The
$searchis a substring to be replaced. - The
$replaceis the replacement string that replaces the$searchvalue. - The
$subjectis the input string - The
$countreturns the number of replacements that the function performed. The$countis optional.
If the $search and $replace arguments are arrays, the str_replace() takes each value from the $search array (from left to right) and replaces it with each value from the $replace array.
If the $replace array has fewer elements than the $search array, the str_replace() function uses an empty string for the replacement values.
If the $search is an array and the $replace is a string, then the str_replace() function replaces every element in the $search with the $replace string.
Note that the str_replace() doesn’t change the input string ($subject). It returns a new array with the $search replaced with the $replace.
PHP str_replace() function examples #
Let’s take some examples of using the PHP str_replace() function.
Simple PHP str_replace() function examples #
The following example uses the str_replace() function to replace the string 'Hello' with 'Hi' in the string 'Hello there':
<?php
$str = 'Hello there';
$new_str = str_replace('Hello', 'Hi', $str);
echo $new_str . '<br>'; // Hi there
echo $str . '<br>'; // Hello thereCode language: PHP (php)Output:
Hi there
Hello thereCode language: PHP (php)As shown in the output, the str_replace() doesn’t change the input string but returns a new string with the substring 'Hello' replaced by the string 'Hi';
The following example uses the str_replace() function to replace the substring 'bye' with the string 'hey' in the string 'bye bye bye':
<?php
$str = 'bye bye bye';
$new_str = str_replace('bye', 'hey', $str);
echo $new_str; // hey hey heyCode language: PHP (php)Output:
hey hey heyCode language: PHP (php)Using PHP str_replace() function with the count argument example #
The following example uses the str_replace() function with the count argument:
<?php
$str = 'Hi, hi, hi';
$new_str = str_replace('hi', 'bye', $str, $count);
echo $count; // 2Code language: PHP (php)In this example, the str_replace() function replaces the substring 'hi' with the string 'bye' in the string 'Hi, hi, hi'.
The count returns two because the str_replace() function only replaces the substring 'hi' not 'Hi'.
PHP str_replace() function with multiple replacements example #
The following example uses the str_replace() function to replace the fox with wolf and dog with cat in the string 'The quick brown fox jumps over the lazy dog':
<?php
$str = 'The quick brown fox jumps over the lazy dog';
$animals = ['fox', 'dog'];
$new_animals = ['wolf', 'cat'];
$new_str = str_replace($animals, $new_animals, $str);
echo $new_str;Code language: PHP (php)Output:
The quick brown wolf jumps over the lazy catCode language: PHP (php)Since the str_replace() function replaces left to right, it might replace previously replaced value while doing multiple replacements. For example:
<?php
$str = 'apple';
$fruits = ['apple', 'orange', 'banana'];
$replacements = ['orange', 'banana', 'strawberry'];
$new_str = str_replace($fruits, $replacements, $str, $count);
echo $new_str; // strawberry
echo $count; // 3Code language: PHP (php)In this example, the string apple is replaced with orange, orange is replaced with banana, and banana is replaced with strawberry. The returned string is strawberry.
PHP str_ireplace() function #
To search for a string case-insensitively and replace it with a replacement string, you use the str_ireplace() function. For example:
<?php
$str = 'Hi, hi, hi';
$new_str = str_ireplace('hi', 'bye', $str, $count);
echo $new_str; // bye, bye, byeCode language: PHP (php)In this example, the str_ireplace() function replaces the substring 'hi' or 'Hi' with the string 'bye'.
Summary #
- Use the
str_replace()function to replace a substring with another string. - Use the
str_ireplace()function to search a substring case-insensitively and replace it with another string.