Có phương thức chứa trong php không?

Đôi khi, bạn có thể muốn kiểm tra xem một chuỗi có chứa một từ hoặc chuỗi con cụ thể hay không. Điều này là do bạn có thể phải thực hiện một số thao tác trên chuỗi con hoặc từ đó. Một trong những cách dễ nhất để làm điều này là trong PHP là sử dụng hàm strpos(). Chúng ta sẽ xem xét các cách khác để kiểm tra chuỗi con trong bài viết này

Hướng dẫn này sẽ giải thích

  1. Cách kiểm tra xem chuỗi có chứa chuỗi con không
  2. Tìm từ cụ thể trong chuỗi

Sử dụng hàm strrpos() để kiểm tra xem chuỗi có chứa chuỗi con không

Phương thức strrpos() được sử dụng để xác định vị trí xuất hiện cuối cùng của một chuỗi con hoặc từ trong một chuỗi. Vị trí chuỗi bắt đầu từ 0. Nếu không tìm thấy chuỗi, giá trị Boolean Sai được trả về

cú pháp

strrpos(string,find,start)

Phương thức nhận 2 tham số là chuỗi cần tìm và chuỗi con cần tìm. Tham số tùy chọn start cho biết nơi bắt đầu quá trình tìm kiếm

Thí dụ

đầu ra

Word Found at Position: 16

ví dụ 2

đầu ra

Word Found at Position: 16

Trong cả hai ví dụ trên, phương thức strpos() nhận các tham số $mystring và $word. Điều kiện if kiểm tra xem chuỗi con có được tìm thấy hay không. Câu lệnh echo in ra vị trí của chuỗi.   

Sử dụng preg_match để tìm kiếm chuỗi chứa chuỗi con

Phương thức preg_match() là một đối sánh biểu thức chính quy giúp tìm một chuỗi

cú pháp

preg_match(pattern, input)

Các tham số chính là mẫu là biểu thức để tìm kiếm. Tham số đầu vào là chuỗi tìm kiếm diễn ra.    

đầu ra

Word Found

Nếu bạn xem xét hiệu suất, thì strpos() nhanh hơn khoảng ba lần so với preg_match(). Phương thức preg_match() mất khoảng 1. 5 giây để hoàn thành một thao tác, trong khi strpos() mất khoảng 0. 5 giây

Sử dụng chức năng preg_match không phân biệt chữ hoa chữ thường để tìm kiếm chuỗi chứa chuỗi con

Thí dụ

Chữ i ở cuối biểu thức chính quy được dùng để thay đổi biểu thức chính quy thành một biểu thức không phân biệt chữ hoa chữ thường

Sử dụng chức năng preg_match để tìm kiếm công việc cụ thể trong chuỗi

Khi bạn đang tìm kiếm một từ cụ thể chứ không phải một chuỗi con, bạn cần hiểu rằng chúng cũng có thể xuất hiện trong các từ khác. Ví dụ,

  • "are" ở đầu "khu vực"
  • "are" ở giữa "giá vé"

Một cách để giảm thiểu điều này là sử dụng biểu thức chính quy kết hợp với ranh giới từ (\b)

Thí dụ

Ví dụ trên sẽ tìm kiếm từ “are”. Nó không phân biệt chữ hoa chữ thường

Phần kết luận

Nếu bạn muốn tìm chuỗi con như url ‘https. //www. stechies. com/photoshop/’ và bạn muốn tìm kiếm chuỗi con ‘stechies’ thì bạn nên tìm strpos()

Nhưng nếu bạn muốn tìm kiếm một từ cụ thể trong chuỗi, chẳng hạn như “stechies” trong chuỗi 'hi stechies là trang web tốt nhất để hướng dẫn đào tạo' thì bạn nên truy cập preg_match với các biểu thức chính quy

Rất nhiều lần khi tôi làm việc với các chuỗi trong PHP, điều quan trọng là phải kiểm tra xem một chuỗi có chứa một chuỗi con khác không. PHP có rất nhiều hàm giúp bạn thao tác với chuỗi theo bất kỳ cách nào bạn muốn. Hôm nay chúng ta sẽ sử dụng một số hàm này để tìm hiểu cách kiểm tra xem một chuỗi có chứa một chuỗi con cụ thể hay không

  • Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?

    Cách kiểm tra xem một chuỗi có chứa một chuỗi con khác trong PHP không

    Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?

    Monty Shokeen

    26 Th02 2021

  • Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?

    Cách cắt chuỗi trong PHP

    Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?
    Có phương thức chứa trong php không?

    Monty Shokeen

    28 Thg 1 2021

Sử dụng các hàm mới trong PHP 8

Ba chức năng mới đã được thêm vào trong PHP 8 để giúp chúng tôi tìm hiểu xem một chuỗi có chứa một chuỗi con khác hay không. Xin lưu ý rằng tất cả các hàm này đều phân biệt chữ hoa chữ thường và việc kiểm tra sự tồn tại của một chuỗi con trống với chúng sẽ luôn trả về


48

  1. 
    
    49 kiểm tra xem một chuỗi có chứa một chuỗi con cụ thể không
  2. 
    
    50 kiểm tra xem một chuỗi có kết thúc bằng một chuỗi con cụ thể không
  3. 
    
    51 kiểm tra xem một chuỗi có bắt đầu bằng một chuỗi con cụ thể không

1

2
3
$sentence = "Dolphins and Elephants are intelligent animals.";
4
5
if(str_contains($sentence, "Elephants")) {
6
    echo 'Elephants are intelligent.';

0

1

2

3

4

5

6

7

8

9

1
2
1
2
2
2
3
2
4
2
5
2
6
2
7
2
8

1
3
0
3
1
3
2
3
3
3
4

Như tôi đã đề cập trước đó, các chức năng này thực hiện khớp phân biệt chữ hoa chữ thường. Bạn cũng có thể thực hiện khớp không phân biệt chữ hoa chữ thường với chúng bằng cách chuyển đổi cả chuỗi và chuỗi con thành cùng một chữ hoa chữ thường bằng cách sử dụng


52 hoặc

53

Các chức năng này là lý tưởng nếu bạn không muốn nhận thêm bất kỳ thông tin nào về các chuỗi con, chẳng hạn như vị trí của chúng. Những người cần thêm thông tin về trận đấu nên cân nhắc sử dụng các chức năng bên dưới

Sử dụng

Bạn có thể sử dụng hàm PHP


54 để lấy vị trí xuất hiện đầu tiên của chuỗi con trong một chuỗi. Hàm sẽ trả về

57 nếu không tìm thấy chuỗi con

Khi bạn sử dụng


54 để kiểm tra chuỗi con, hãy đảm bảo rằng bạn sử dụng toán tử bất đẳng thức nghiêm ngặt. Điều này là do vị trí được trả về bởi

54 bắt đầu bằng 0 và 0 cũng có thể tương đương với

57. Sử dụng kiểm tra bằng thông thường sẽ cho bạn phủ định sai nếu chuỗi con ở ngay đầu chuỗi chính

Dưới đây là một số ví dụ về


54

1

2
3
3
9
4
5
$sentence = "Dolphins and Elephants are intelligent animals.";
2
6
$sentence = "Dolphins and Elephants are intelligent animals.";
4

0

1

2
$sentence = "Dolphins and Elephants are intelligent animals.";
8

4

5

7
4
2

9
4
4
2
1
4
6
2
3
4
8
2
4

1
2
6
5
2
2
8
3
0
5
5
3
2
5
7
3
3
4
6
if(str_contains($sentence, "Elephants")) {
0
if(str_contains($sentence, "Elephants")) {
1
if(str_contains($sentence, "Elephants")) {
2

1
if(str_contains($sentence, "Elephants")) {
4
if(str_contains($sentence, "Elephants")) {
5
if(str_contains($sentence, "Elephants")) {
6
if(str_contains($sentence, "Elephants")) {
7
3
4

Như bạn có thể thấy trong ví dụ trên, Angela không ở đầu câu của chúng ta, vì vậy nó sẽ có một vị trí khác 0 có giá trị là


48

Mặt khác, Amy đúng ở đầu và vị trí 0 của nó được đánh giá là sai, mặc dù nó tồn tại trong chuỗi. Do đó, hãy luôn đảm bảo rằng bạn đánh giá giá trị của


54 với

64 vì không có cách nào để biết vị trí của một chuỗi con khi xử lý các chuỗi trong thực tế

Đôi khi, bạn có thể cần thực hiện việc kiểm tra chuỗi con này trong chuỗi không phân biệt chữ hoa chữ thường. Trong trường hợp đó, bạn chỉ cần sử dụng hàm


55 trong PHP. Nó hoạt động chính xác như

54 nhưng làm cho tìm kiếm không phân biệt chữ hoa chữ thường

1

2
3
6
3
4
5
___
6
6
6
22_______8

0

1

2

4
    echo 'Elephants are intelligent.';
3

5
    echo 'Elephants are intelligent.';
5

7

1_______10_______9____
2
1_______1_______16_______ 9_______

Sử dụng

Theo mặc định, hàm


67 trả về một phần của chuỗi chính, bắt đầu từ chuỗi con và đi đến cuối chuỗi chính. Nó sẽ trả về

57 nếu chuỗi con không tồn tại bên trong chuỗi chính

Chúng ta có thể sử dụng thông tin này để kiểm tra sự tồn tại của một chuỗi con bên trong một chuỗi. Tất cả những gì chúng ta phải làm là đánh giá giá trị được trả về bởi


67 và kiểm tra xem nó có phải là

57 hay không. Cũng giống như lần trước, chúng ta sẽ sử dụng toán tử bất đẳng thức nghiêm ngặt

64 để kiểm tra

Dưới đây là một số ví dụ

1

2
3

07
4

09
5
6

12

0

14

2

1

4

18

5

7

21

9

23
2
1
4
6
2
3

27
2
4

1
2
6

31
2
8
3
0

34
3
2

36
3
3
4
6
if(str_contains($sentence, "Elephants")) {
0

40
if(str_contains($sentence, "Elephants")) {
2

1
if(str_contains($sentence, "Elephants")) {
4

44
if(str_contains($sentence, "Elephants")) {
6
if(str_contains($sentence, "Elephants")) {
7
3
4

Bạn có thể sử dụng


68 thay cho

67 để làm cho tìm kiếm không phân biệt chữ hoa chữ thường. Tất cả các hành vi khác của

68 vẫn giữ nguyên

Suy nghĩ cuối cùng

Trong thủ thuật nhanh này, chúng ta đã tìm hiểu ba cách khác nhau để kiểm tra xem một chuỗi có chứa chuỗi con hay không trong PHP. Bạn có thể sử dụng bất kỳ chức năng nào trong số này tùy thuộc vào thông tin bạn cần từ chuỗi. Sử dụng các hàm PHP 8 mới sẽ cho phép bạn bỏ qua bất kỳ loại kiểm tra nghiêm ngặt nào, nhưng bạn sẽ cần sử dụng các hàm cũ hơn nếu bạn muốn biết vị trí của chuỗi con hoặc lấy một phần của chuỗi chính làm giá trị trả về

Làm cách nào để kiểm tra xem một chuỗi có chứa văn bản trong PHP không?

Kể từ PHP 8+, bạn có thể sử dụng hàm str_contains($string, $substring) mới để kiểm tra xem một chuỗi có chứa . Hàm str_contains() trả về "true" nếu chuỗi chứa chuỗi con hoặc "false" nếu ngược lại.

Làm cách nào để kiểm tra xem một chuỗi có chứa một ký tự cụ thể trong PHP không?

Sử dụng str_contains . str_contains là một chức năng mới được giới thiệu trong PHP 8. Phương thức này được sử dụng để kiểm tra xem một chuỗi PHP có chứa một chuỗi con hay không. Hàm kiểm tra chuỗi và trả về giá trị boolean true trong trường hợp nó tồn tại và sai nếu ngược lại.

Làm cách nào để khớp chuỗi trong PHP?

Hàm strcmp() so sánh hai chuỗi . Ghi chú. Hàm strcmp() an toàn nhị phân và phân biệt chữ hoa chữ thường. Mẹo. Hàm này tương tự như hàm strncmp(), với sự khác biệt là bạn có thể chỉ định số lượng ký tự từ mỗi chuỗi sẽ được sử dụng để so sánh với hàm strncmp().

Làm cách nào để lấy từ cụ thể từ chuỗi trong PHP?

strpos() - Tìm kiếm văn bản trong một chuỗi . Nếu tìm thấy khớp, hàm trả về vị trí ký tự của khớp đầu tiên. Nếu không tìm thấy kết quả phù hợp, nó sẽ trả về FALSE.