str_ireplace

Case-insensitive version of str_replace.

Description

mixed str_ireplace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] )

This function returns a string or an array with all occurrences of search in subject (ignoring case) replaced with the given replace value. If you don't need fancy replacing rules, you should generally use this function instead of preg_replace with the i 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