- Hàm str_replace() là hàm tìm kiếm và thay thế các ký tự trong chuỗi
2. Cú pháp
- Mã: Chọn tất cả
str_replace(
array|string $search,
array|string $replace,
string|array $subject,
int &$count = null
): string|array
- Hàm này trả về một chuỗi hoặc một mảng, mà trong đó tất cả các lần xuất hiện của $search trong $subject sẽ được thay thế thành $replace
3. Tham số
- $search: Giá trị cần tìm kiếm
- $replace: Giá trị thay thế
- $subject: Chuỗi hoặc mảng đang được tìm kiếm và thay thế
- $count: tham số tùy chọn, dùng để lưu trữ số lần thay thế trong quá trình thực thi
4. Kết quả trả về
- Hàm này trả về một chuỗi hoặc một mảng chứa các giá trị đã thay thế
5. Ví dụ:
- Ví dụ 1: Các tham số $strSearch, $strReplace, $subject đều là chuỗi (String):
- Mã: Chọn tất cả
<?php
$str = "Tìm hiểu kiến thức lập trình tại chiase123.com";
$strSearch = "lập trình";
$strReplace = "PHP";
$strNew = str_replace($strSearch, $strReplace, $str);
echo $strNew;
// Kết quả: Tìm hiểu kiến thức PHP tại chiase123.com
- Ví dụ 2: Các tham số $strSearch, $strReplace, $subject đều là mảng (Array):
+ input:
- Mã: Chọn tất cả
<?php
$subject = ['toi', 'dang', 'hoc lap trinh', 'tai chiase123.com'];
$search = ['toi', 'dang', 'hoc lap trinh'];
$replace = ['ban', 'co', 'hoc php'];
$result = str_replace($search, $replace, $subject);
echo "<pre>";
print_r($result);
echo "</pre>";
+ output:
- Mã: Chọn tất cả
<pre>Array
(
[0] => ban
[1] => co
[2] => hoc php
[3] => tai chiase123.com
)
</pre>
- Ví dụ 3: Các tham số $strSearch, $strReplace là các mảng kí tự và $subject là một chuỗi:
+ input:
- Mã: Chọn tất cả
<?php
$search = array('A', 'B', 'C', 'D', 'E');
$replace = array('B', 'C', 'D', 'E', 'F');
$subject = 'A';
echo str_replace($search, $replace, $subject);
+ output:
- Mã: Chọn tất cả
F
+ giải thích: Các phần tử của mảng $search lần lượt tìm kiếm trong chuỗi $subject và được thay thế lần lượt bằng các phần tử trong mảng $replace và cuỗi cùng phần tử cuối mảng $search là E được thay thế bằng phần tử cuối mảng $replace là F, vậy sau cùng chỉ tồn phần tử F không bị thay thế.
- Ví dụ 4: Tham số $search là mảng và $replace là chuỗi:
+ input:
- Mã: Chọn tất cả
<?php
$subject = 'toi dang hoc, nghien cuu lap trinh tai chiase123.com';
$search = ['hoc', 'nghien cuu'];
$replace = 'hoc tap';
$result = str_replace($search, $replace, $subject);
echo $result;
+ output:
- Mã: Chọn tất cả
toi dang hoc tap, hoc tap lap trinh tai chiase123.com
- Ví dụ 5: Tham số $replace có ít phần tử hơn $search :
+ input:
- Mã: Chọn tất cả
<?php
$subject = 'toi dang hoc, nghien cuu lap trinh tai chiase123.com';
$search = ['hoc', 'nghien cuu', 'lap trinh'];
$replace = ['learn', 'research'];
$result = str_replace($search, $replace, $subject);
echo $result;
+ output:
- Mã: Chọn tất cả
toi dang learn, research tai chiase123.com
- Ví dụ 6: Đây là một ví dụ sử dụng hàm str_replace() với hàm json_decode() và hàm json_encode() :
+ input:
- Mã: Chọn tất cả
<?php
$search = "A";
$replace = "a";
$subject = array("A","B","C","D","E","F");
// $subject = "ABCDEF";
function str_replace_json($search, $replace, $subject){
return json_decode(str_replace($search, $replace, json_encode($subject)));
}
print_r( str_replace_json($search, $replace, $subject) );
+ output: Nếu $subject là mảng kí tự:
- Mã: Chọn tất cả
Array
(
[0] => a
[1] => B
[2] => C
[3] => D
[4] => E
[5] => F
)
+ output: Nếu $subject là chuỗi kí tự:
- Mã: Chọn tất cả
aBCDEF
6. Tài liệu tham khảo
https://www.php.net/manual/en/function.str-replace.php
https://codetutam.com/ham-str_replace-trong-php-la-gi/