Quay lại

Replace multiple keywords trong một chuỗi trong Laravel Chuyên mục PHP và Laravel    2024-01-05    51 Lượt xem    9 Lượt thích    comment-3 Created with Sketch Beta. 0 Bình luận

Replace multiple keywords trong một chuỗi trong Laravel

Bắt đầu từ phiên bản v8.83.0Laravel 9, bạn hiện có thể sử dụng nó theo các cách sau:

use Illuminate\Support\Str;

echo Str::swap([
    'PHP' => 'PHP 8',
    'awesome' => 'fantastic'
], 'PHP is awesome');

// PHP 8 is fantastic
 
$string = Str::of('Tacos are great!')
    ->swap([
        'Tacos' => 'Burritos',
        'great' => 'fantastic',
    ]);
 
// Burritos are fantastic!

Kiểm tra tài liệu — Str::swap

Nếu bạn vẫn đang sử dụng phiên bản trước 8.83.0, hãy tiếp tục đọc bài viết này.

Đôi khi, bạn có thể gặp tình huống trong đó có một số từ khóa và bạn muốn thay thế chúng bằng một số từ khóa khác trong chuỗi.

Tôi đã khám phá ra chỉ đơn giản như một sleek Laravel macro của Aaron Francis có thể giúp bạn thực hiện điều này một cách thuận tiện.

Ví dụ, giả sử chúng ta có một chuỗi gọi là "PHP is awesome" và chúng ta muốn thay thế "PHP" bằng "PHP 8" và "awesome" bằng "fantastic" trong chuỗi này.

Dưới đây là cách chúng ta có thể thực hiện điều này bằng cách sử dụng macro này.

use Illuminate\Support\Str;

Str::macro('swap', function($map, $string) {
    return str_replace(array_keys($map), array_values($map), $string);
});

$string = 'PHP is awesome';

echo Str::swap([
    'PHP' => 'PHP 8',
    'awesome' => 'fantastic'
], $string);

// PHP 8 is fantastic

Bạn có thể hoán đổi nhiều từ khóa trong một chuỗi cùng một lúc như vậy.

Thực sự rất tiện dụng!

Bình luận (0)

Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough
Michael Gough

Bài viết liên quan

Learning English Everyday