Home >Backend Development >PHP Problem >php replace all with

php replace all with

WBOY
WBOYOriginal
2023-05-28 21:11:371956browse

In PHP, string replacement is a common operation, and replacing all matching strings is a common requirement. This article will detail how to use the replace function in PHP to replace all matching strings.

1. str_replace function

The most commonly used replacement function in PHP is the str_replace() function, which can replace a specified part of a string. The syntax is as follows:

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

Among them, $search is the string to be replaced, $replace is the string to be replaced, and $subject is the original string.

However, the str_replace function can only replace the first matching string and cannot replace all matching strings. The following is an example:

$str = "I love PHP, PHP is a good language.";
echo str_replace("PHP", "Python", $str);
// 输出结果为: I love Python, PHP is a good language.

As you can see, only the first occurrence of the PHP string is replaced, and the following ones are not replaced.

2. preg_replace function

To replace all matching strings, you can use the regular expression replacement function preg_replace(). The syntax is as follows:

string preg_replace(mixed $pattern, mixed $replacement, mixed $subject[, int $limit])

Among them, $pattern is a regular expression, $replacement is the string to be replaced, and $subject is the original string.

The preg_replace() function searches the original string for a string matching the regular expression and replaces it with the specified string. Here is an example:

$str = "I love PHP, PHP is a good language.";
echo preg_replace("/PHP/", "Python", $str);
// 输出结果为: I love Python, Python is a good language.

As you can see, all matching PHP strings have been replaced with Python.

If you want to replace multiple strings, you can use an array to specify the replacement string. For example:

$str = "I love PHP, PHP is a good language.";
$search = array("/PHP/", "/good/");
$replace = array("Python", "excellent");
echo preg_replace($search, $replace, $str);
// 输出结果为: I love Python, Python is a excellent language.

You can see that all matching strings have been replaced.

3. strtr function

Another function that replaces all matching strings is the strtr() function. The syntax is as follows:

string strtr(string $str, array $replace_pairs)

Among them, $str is the original string, and $replace_pairs is the string pair to be replaced.

This function will match the string pairs specified in the array in the original string and replace them with the corresponding values. Here is an example:

$str = "I love PHP, PHP is a good language.";
$replace_pairs = array("PHP" => "Python", "good" => "excellent");
echo strtr($str, $replace_pairs);
// 输出结果为: I love Python, Python is a excellent language.

As you can see, all matching strings have been replaced.

4. Summary

This article introduces three methods of replacing all matching strings in PHP: using the regular expression replacement function preg_replace(), using the string replacement function str_replace() and combining Regular expressions, and using the string replacement function strtr(). In actual use, you can choose the appropriate method according to your needs.

It is worth noting that these functions directly modify the original string instead of returning a new string. If you need to keep the original string unchanged, you can first assign it to another variable for operation.

The above is the detailed content of php replace all with. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn