str_ireplace
Case-insensitive version of str_replace
Description
stringarray str_ireplace(
arraystring $search
,
arraystring $replace
,
stringarray $subject
,
int &$count
= null
)
To replace text based on a pattern rather than a fixed string,
use preg_replace with the i
pattern modifier.
Parameters
If search
and replace
are
arrays, then str_ireplace takes a value from each
array and uses them to search and replace on
subject
. If replace
has fewer
values than search
, then an empty string is used for
the rest of replacement values. If search
is an
array and replace
is a string, then this replacement
string is used for every value of search
. The
converse would not make sense, though.
If search
or replace
are arrays, their elements are processed first to last.
-
search
-
The value being searched for, otherwise known as the
needle. An array may be used to designate
multiple needles.
-
replace
-
The replacement value that replaces found search
values. An array may be used to designate multiple replacements.
-
subject
-
The string or array being searched and replaced on,
otherwise known as the haystack.
If subject
is an array, then the search and
replace is performed with every entry of
subject
, and the return value is an array as
well.
-
count
-
If passed, this will be set to the number of replacements performed.
Return Values
Returns a string or an array of replacements.
Examples
Example #1 str_ireplace example
<?php
$bodytag = str_ireplace("%body%", "black", "<body text=%BODY%>");
echo $bodytag; // <body text=black>
?>
Notes
Note: This function is
binary-safe.
Caution
Replacement order gotcha
Because str_ireplace replaces left to right, it might
replace a previously inserted value when doing multiple replacements.
Example #2 in the str_replace documentation
demonstrates how this may affect you in practice.
See Also
- str_replace
- preg_replace
- strtr