$search = array('{user}', '{site}');
$replace = array('Qiao', 'stackoverflow');
$subject = 'Hello {user}, welcome to {site}.';
echo str_replace ($search, $replace, $subject);
Kết quả trong Hello Qiao, welcome to stackoverflow.
.
$array_from_to = array (
'from1' => 'to1';
'from2' => 'to2';
);
Đây không phải là mảng hai chiều, đó là mảng kết hợp.
Mở rộng trên ví dụ đầu tiên, nơi chúng tôi đặt $ search làm khóa của mảng và $ thay thế làm giá trị, mã sẽ trông như thế này.
$searchAndReplace = array(
'{user}' => 'Qiao',
'{site}' => 'stackoverflow'
);
$search = array_keys($searchAndReplace);
$replace = array_value($searchAndReplace);
# Our subject is the same as our first example.
echo str_replace ($search, $replace, $subject);
Kết quả trong Hello Qiao, welcome to stackoverflow.
.
Nguồn
2010-03-08 04:44:06
vâng, tệ của tôi. thay đổi nó – Qiao
nó không phải là giải pháp hoàn hảo cho vấn đề nêu (gây ra độ dài nên giống nhau), nhưng nó là lý tưởng trong trường hợp của tôi. Và tốc độ nhanh. – Qiao
'strtr' hoạt động tốt với các giá trị thay thế khác với độ dài của giá trị tìm kiếm. Sự khác biệt giữa nó và 'str_replace' là' strtr' sẽ chỉ làm một bản dịch (dài nhất là lần xuất hiện đầu tiên), sẽ nhanh hơn (nhưng với các kết quả khác nhau). Ví dụ: ['ab' => 'c', 'c' => 'd'] sẽ dịch 'ab' thành 'c', trong khi với str_replace nó sẽ trở thành 'd'. – Matthew