Rumah >pembangunan bahagian belakang >masalah PHP >php gantikan semua dengan

php gantikan semua dengan

WBOY
WBOYasal
2023-05-28 21:11:371956semak imbas

Dalam PHP, penggantian rentetan ialah operasi biasa dan menggantikan semua rentetan yang sepadan ialah keperluan biasa. Artikel ini akan memperincikan cara menggunakan fungsi ganti dalam PHP untuk menggantikan semua rentetan yang sepadan.

1. Fungsi str_replace

Fungsi gantian yang paling biasa digunakan dalam PHP ialah fungsi str_replace(), yang boleh menggantikan bahagian rentetan yang ditentukan. Sintaksnya adalah seperti berikut:

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

Antaranya, $search ialah rentetan yang akan diganti, $replace ialah rentetan yang akan diganti, dan $subject ialah rentetan asal.

Walau bagaimanapun, fungsi str_replace hanya boleh menggantikan rentetan padanan pertama dan tidak boleh menggantikan semua rentetan yang sepadan. Berikut ialah contoh:

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

Seperti yang anda lihat, hanya kejadian pertama rentetan PHP diganti dan yang berikut tidak diganti.

2. fungsi preg_replace

Untuk menggantikan semua rentetan yang sepadan, anda boleh menggunakan fungsi penggantian ungkapan biasa preg_replace(). Sintaksnya adalah seperti berikut:

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

Antaranya, $pattern ialah ungkapan biasa, $replacement ialah rentetan yang akan diganti, dan $subject ialah rentetan asal.

fungsi preg_replace() akan mencari rentetan asal untuk rentetan yang sepadan dengan ungkapan biasa dan menggantikannya dengan rentetan yang ditentukan. Berikut ialah contoh:

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

Seperti yang anda lihat, semua rentetan PHP yang sepadan telah digantikan dengan Python.

Jika anda ingin menggantikan berbilang rentetan, anda boleh menggunakan tatasusunan untuk menentukan rentetan gantian. Contohnya:

$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.

Seperti yang anda lihat, semua rentetan yang sepadan telah diganti.

3. Fungsi strtr

Fungsi lain yang menggantikan semua rentetan yang sepadan ialah fungsi strtr(). Sintaksnya adalah seperti berikut:

string strtr(string $str, array $replace_pairs)

Antaranya, $str ialah rentetan asal dan $replace_pairs ialah pasangan rentetan yang akan diganti.

Fungsi ini akan memadankan pasangan rentetan yang dinyatakan dalam tatasusunan dalam rentetan asal dan menggantikannya dengan nilai yang sepadan. Berikut ialah contoh:

$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.

Seperti yang anda lihat, semua rentetan yang sepadan telah diganti.

4. Ringkasan

Artikel ini memperkenalkan tiga kaedah untuk menggantikan semua rentetan yang sepadan dalam PHP: menggunakan fungsi penggantian ungkapan biasa preg_replace(), menggunakan fungsi penggantian rentetan str_replace() dan menggabungkan ungkapan Biasa , dan menggunakan fungsi penggantian rentetan strtr(). Dalam penggunaan sebenar, anda boleh memilih kaedah yang sesuai mengikut keperluan anda.

Perlu diingat bahawa fungsi ini mengubah suai secara langsung rentetan asal dan bukannya mengembalikan rentetan baharu. Jika anda perlu mengekalkan rentetan asal tidak berubah, anda boleh menetapkannya terlebih dahulu kepada pembolehubah lain untuk operasi.

Atas ialah kandungan terperinci php gantikan semua dengan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn