Cách so sánh hai chuỗi trong PHP không phân biệt chữ hoa chữ thường

Trong bất kỳ loại lập trình nào, bạn sẽ luôn gặp các tình huống cần so sánh các giá trị với nhau, nếu các giá trị là boolean hoặc số nguyên thì việc so sánh rất đơn giản. Nhưng nếu bạn muốn so sánh các chuỗi hoặc các phần của chuỗi thì có thể so sánh nhiều hơn, chẳng hạn như trường hợp của chuỗi bạn đang so sánh. Trong hướng dẫn này, chúng ta sẽ xem xét tất cả các cách khác nhau để bạn có thể so sánh các chuỗi trong PHP bằng cách sử dụng một số hàm PHP tích hợp

Cách phổ biến nhất mà bạn sẽ thấy khi so sánh hai chuỗi đơn giản là sử dụng toán tử == nếu hai chuỗi bằng nhau thì nó trả về true

// Using the == operator, Strings match is printedif['string1' == 'string1']{    echo 'Strings match.';} else {    echo 'Strings do not match.';}

Mã này sẽ trả về các chuỗi khớp nhau, nhưng nếu các chuỗi không giống nhau thì nó sẽ không khớp. Nếu tất cả các chữ cái trong một chuỗi đều ở dạng chữ hoa thì điều này sẽ trả về false và các chuỗi không khớp

// Using the == operator, Strings do not match is printedif['string1' == 'STRING1']{    echo 'Strings match.';} else {    echo 'Strings do not match.';}

Điều này có nghĩa là chúng ta không thể sử dụng toán tử == khi so sánh các chuỗi từ đầu vào của người dùng, ngay cả khi chữ cái đầu tiên được viết hoa, nó vẫn trả về false. Vì vậy, chúng ta cần sử dụng một số chức năng khác để giúp so sánh các chuỗi

Một cách khác để so sánh các chuỗi là sử dụng hàm PHP strcmp, đây là hàm so sánh chuỗi an toàn nhị phân sẽ trả về 0 nếu các chuỗi khớp

// strcmp function, Strings match is printedif[strcmp['string1', 'string1'] == 0]{     echo 'Strings match.';} else {     echo 'Strings do not match.';}

Câu lệnh if này sẽ trả về true và lặp lại rằng các chuỗi khớp với nhau. Nhưng hàm này phân biệt chữ hoa chữ thường nên nếu một trong các chuỗi có chữ hoa thì hàm sẽ không trả về 0

Các ví dụ trước sẽ không cho phép bạn so sánh các chuỗi chữ hoa chữ thường khác nhau, hàm sau đây sẽ cho phép bạn so sánh các chuỗi không phân biệt chữ hoa chữ thường

// Both strings will matchif[strcasecmp['string1', 'string1'] == 0]{     echo 'Strings match.';} else {     echo 'Strings do not match.';} // Both strings will match even with different caseif[strcasecmp['string1', 'String1'] == 0]{     echo 'Strings match.';} else {     echo 'Strings do not match.';} // Both strings will match even with different caseif[strcasecmp['string1', 'STRING1'] == 0]{     echo 'Strings match.';} else {     echo 'Strings do not match.';}

Tất cả các câu lệnh if này sẽ trả về các chuỗi khớp nhau, có nghĩa là chúng ta có thể sử dụng hàm này khi so sánh các chuỗi do người dùng nhập vào

Bạn có thể sử dụng == để so sánh các chuỗi trong PHP không?

Toán tử gán chỉ định biến ở bên trái để có một giá trị mới như biến ở bên phải, trong khi toán tử bằng == kiểm tra sự bằng nhau và trả về đúng hoặc sai theo . Ví dụ. Ví dụ này mô tả so sánh chuỗi bằng toán tử ==. . Example: This example describes the string comparison using the == operator.

Làm cách nào để so sánh các chuỗi trong PHP?

Cách dễ nhất để so sánh các chuỗi PHP là sử dụng các toán tử logic ['=='] và ['. ='] . Nếu bạn muốn biết chuỗi nào lớn hơn hoặc nhỏ hơn về mặt từ điển, bạn có thể sử dụng các toán tử ['

Làm cách nào để tìm sự khác biệt giữa hai chuỗi trong PHP?

Trả lời. Sử dụng hàm strcmp[] của PHP . Hàm này lấy hai chuỗi str1 và str2 làm tham số. Hàm strcmp[] trả về < 0 nếu str1 nhỏ hơn str2 ; .

Dùng để so sánh hai chuỗi bỏ qua trường hợp nào?

Phương thức equalsIgnoreCase[] so sánh hai chuỗi, bỏ qua sự khác biệt giữa chữ hoa và chữ thường. Phương thức này trả về true nếu các chuỗi bằng nhau và false nếu không. Mẹo. Sử dụng phương thức compareToIgnoreCase[] để so sánh hai chuỗi theo từ điển, bỏ qua sự khác biệt về chữ hoa chữ thường.

Chủ Đề