Class Str trong Laravel cung cấp các phương thức tiện ích để thao tác với chuỗi (string). Các phương thức này thường được sử dụng khi bạn cần xử lý chuỗi như cắt, kiểm tra, thay thế, định dạng, và nhiều tác vụ khác.
Trước khi đi vào từng phương thức, để sử dụng Str helper, bạn cần khai báo Facade của Str trong phần đầu của file PHP như sau:
use Illuminate\Support\Str;Các hàm Str helper phổ biến trong Laravel:
1. Str::after($subject, $search)
- Trả về phần chuỗi sau chuỗi con tìm kiếm.
use Illuminate\Support\Str;
$result = Str::after('This is a test', 'This is');
// Kết quả: " a test"2. Str::afterLast($subject, $search)
- Trả về phần chuỗi sau lần xuất hiện cuối cùng của chuỗi con tìm kiếm.
$result = Str::afterLast('App\Http\Controllers\Controller', '\\');
// Kết quả: "Controller"3. Str::before($subject, $search)
- Trả về phần chuỗi trước chuỗi con tìm kiếm.
$result = Str::before('This is a test', 'a test');
// Kết quả: "This is "4. Str::beforeLast($subject, $search)
- Trả về phần chuỗi trước lần xuất hiện cuối cùng của chuỗi con tìm kiếm.
$result = Str::beforeLast('App\Http\Controllers\Controller', '\\');
// Kết quả: "App\Http\Controllers"5. Str::between($subject, $from, $to)
- Trả về phần chuỗi giữa hai chuỗi con.
$result = Str::between('This is [a test]', '[', ']');
// Kết quả: "a test"6. Str::camel($value)
- Chuyển chuỗi thành kiểu camelCase.
$result = Str::camel('hello_world');
// Kết quả: "helloWorld"7. Str::contains($haystack, $needles)
- Kiểm tra xem chuỗi có chứa chuỗi con nào không.
$result = Str::contains('This is a test', 'test');
// Kết quả: true8. Str::containsAll($haystack, array $needles)
- Kiểm tra xem chuỗi có chứa tất cả các chuỗi con trong một mảng không.
$result = Str::containsAll('This is a test', ['This', 'test']);
// Kết quả: true9. Str::endsWith($haystack, $needles)
- Kiểm tra xem chuỗi có kết thúc bằng chuỗi con nào không.
$result = Str::endsWith('This is a test', 'test');
// Kết quả: true10. Str::finish($value, $cap)
- Thêm một chuỗi vào cuối chuỗi nếu nó chưa có.
$result = Str::finish('this/string', '/');
// Kết quả: "this/string/"11. Str::is($pattern, $value)
- Kiểm tra xem chuỗi có khớp với mẫu (pattern) không.
$result = Str::is('foo*', 'foobar');
// Kết quả: true12. Str::isAscii($value)
- Kiểm tra xem chuỗi có chỉ chứa các ký tự ASCII không.
$result = Str::isAscii('Laravel123');
// Kết quả: true13. Str::isJson($value)
- Kiểm tra xem chuỗi có phải là JSON hợp lệ không.
$result = Str::isJson('{"name":"John"}');
// Kết quả: true14. Str::isUuid($value)
- Kiểm tra xem chuỗi có phải là UUID hợp lệ không.
$result = Str::isUuid('550e8400-e29b-41d4-a716-446655440000');
// Kết quả: true15. Str::kebab($value)
- Chuyển chuỗi thành kiểu kebab-case.
$result = Str::kebab('HelloWorld');
// Kết quả: "hello-world"16. Str::length($value)
- Trả về độ dài của chuỗi.
$result = Str::length('Laravel');
// Kết quả: 717. Str::limit($value, $limit = 100, $end = '...')
- Giới hạn độ dài của chuỗi và thêm dấu
...nếu vượt quá giới hạn.
$result = Str::limit('The quick brown fox jumps over the lazy dog', 20);
// Kết quả: "The quick brown fox..."18. Str::lower($value)
- Chuyển chuỗi thành chữ thường.
$result = Str::lower('LARAVEL');
// Kết quả: "laravel"19. Str::markdown($string, array $options = [])
- Chuyển đổi chuỗi markdown thành HTML.
$result = Str::markdown('# Laravel is great');
// Kết quả: "<h1>Laravel is great</h1>"20. Str::orderedUuid()
- Tạo một UUID có thể sắp xếp theo thứ tự.
$result = Str::orderedUuid();
// Kết quả: Một UUID hợp lệ (ví dụ: "01f5e9e6-bbdb-11eb-8529-0242ac130003")21. Str::plural($value, $count = 2)
- Chuyển chuỗi sang dạng số nhiều (plural).
$result = Str::plural('car', 2);
// Kết quả: "cars"22. Str::random($length = 16)
- Tạo một chuỗi ngẫu nhiên với độ dài nhất định.
$result = Str::random(10);
// Kết quả: Một chuỗi ngẫu nhiên gồm 10 ký tự23. Str::replace($search, $replace, $subject)
- Thay thế tất cả các chuỗi con trong chuỗi bằng một chuỗi khác.
$result = Str::replace('Laravel', 'CodeTutHub', 'Laravel is great');
// Kết quả: "CodeTutHub is great"24. Str::replaceArray($search, array $replace, $subject)
- Thay thế chuỗi con đầu tiên trong chuỗi với các giá trị của một mảng.
$result = Str::replaceArray('?', ['one', 'two'], 'There are ? and ?.');
// Kết quả: "There are one and two."25. Str::replaceFirst($search, $replace, $subject)
- Thay thế lần xuất hiện đầu tiên của chuỗi con trong chuỗi.
$result = Str::replaceFirst('the', 'a', 'the quick brown fox');
// Kết quả: "a quick brown fox"26. Str::replaceLast($search, $replace, $subject)
- Thay thế lần xuất hiện cuối cùng của chuỗi con trong chuỗi.
$result = Str::replaceLast('the', 'a', 'the quick brown fox jumped over the lazy dog');
// Kết quả: "the quick brown fox jumped over a lazy dog"27. Str::slug($title, $separator = '-')
- Tạo một slug từ chuỗi.
$result = Str::slug('Laravel 8 Framework');
// Kết quả: "laravel-8-framework"28. Str::snake($value, $delimiter = '_')
- Chuyển chuỗi thành kiểu snake_case.
$result = Str::snake('HelloWorld');
// Kết quả: "hello_world"29. Str::start($value, $prefix)
- Thêm chuỗi con vào đầu chuỗi nếu nó chưa có.
$result = Str::start('tuthub.com', 'www.');
// Kết quả: "www.tuthub.com"30. Str::startsWith($haystack, $needles)
- Kiểm tra xem chuỗi có bắt đầu bằng chuỗi con nào không.
$result = Str::startsWith('Laravel is great', 'Laravel');
// Kết quả: true31. Str::studly($value)
- Chuyển chuỗi thành kiểu StudlyCase.
$result = Str::studly('hello_world');
// Kết quả: "HelloWorld"32. Str::substr($string, $start, $length = null)
- Trả về một phần của chuỗi, bắt đầu từ vị trí
$startvới độ dài$length.
$result = Str::substr('Laravel', 0, 4);
// Kết quả: "Lara"33. Str::title($value)
- Chuyển chuỗi thành dạng Title Case (mỗi từ viết hoa chữ cái đầu).
$result = Str::title('hello world');
// Kết quả: "Hello World"34. Str::ucfirst($string)
- Viết hoa chữ cái đầu tiên của chuỗi.
$result = Str::ucfirst('laravel');
// Kết quả: "Laravel"35. Str::upper($value)
- Chuyển chuỗi thành chữ hoa.
$result = Str::upper('laravel');
// Kết quả: "LARAVEL"36. Str::uuid()
- Tạo một UUID ngẫu nhiên.
$result = Str::uuid();
// Kết quả: Một UUID hợp lệ (ví dụ: "123e4567-e89b-12d3-a456-426614174000")37. Str::words($value, $words = 100, $end = '...')
- Giới hạn chuỗi đến một số lượng từ nhất định.
$result = Str::words('Laravel is a great framework', 3);
// Kết quả: "Laravel is a..."Kết luận
Các hàm Str helper trong Laravel là công cụ mạnh mẽ giúp xử lý chuỗi dễ dàng và hiệu quả. Từ việc cắt chuỗi, kiểm tra chuỗi, tạo slug, cho đến việc tạo chuỗi ngẫu nhiên, các hàm này giúp giảm thiểu mã code phức tạp và tăng hiệu quả làm việc. Sử dụng thành thạo các hàm Str helper sẽ giúp bạn tiết kiệm thời gian và viết mã sạch hơn trong các dự án Laravel.
Nếu bạn đang phát triển một ứng dụng Laravel, hãy áp dụng những phương thức này vào các thao tác liên quan đến chuỗi để tối ưu hóa quá trình phát triển của mình.
Chúc bạn học tập hiệu quả trên CodeTutHub!








