Podręcznik PHP
Poprzedni |  | Następny

# str_replace

(PHP 3>= 3.0.6, PHP 4 )

str_replace -- Replace all occurrences of the search string with the replacement string

## Description

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

This function returns a string or an array with all occurrences of `search` in `subject` replaced with the given `replace` value. If you don't need fancy replacing rules, you should always use this function instead of ereg_replace() or preg_replace().

As of PHP 4.0.5, every parameter in str_replace() can be an array.

Ostrzeżenie

In PHP versions prior to 4.3.3 a bug existed when using arrays as both `search` and `replace` parameters which caused empty `search` indexes to be skipped without advancing the internal pointer on the `replace` array. This has been corrected in `PHP 4.3.3`, any scripts which relied on this bug should remove empty search values prior to calling this function in order to mimick the original behavior.

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.

If `search` and `replace` are arrays, then str_replace() takes a value from each array and uses them to do 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`.

Przykład 1. str_replace() examples

`<?php
// Provides: <body text='black'>
$bodytag = str_replace("%body%", "black", "<body text='%body%'>");
// Provides: Hll Wrld f PHP
$vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");
$onlyconsonants = str_replace($vowels, "", "Hello World of PHP");
// 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);
// Use of the count parameter is available as of PHP 5.0.0
$str = str_replace("ll", "", "good golly miss molly!", $count);
echo $count; // 2
?>`

> Notatka: Ta funkcja jest bezpieczna dla danych binarnych.

> Notatka: As of `PHP 5.0.0` the number of matched and replaced needles (`search`) will be returned in `count` which is passed by reference. Prior to `PHP 5.0.0` this parameter is not available.

See also str_ireplace(), substr_replace(), ereg_replace(), preg_replace(), and strtr().

Poprzedni | Spis treści | Następny
str_repeat | Początek rozdziału | str_rot13