Hàm so sánh php
Show
Hôm nay Freehost Page sẽ cùng bạn tìm hiểu các toán tử so sánh và logic vốn rất hay được dùng trong PHP mà chủ yếu là đi kèm với các hàm điều kiện (ví dụ như if). Nếu biết ngôn ngữ lập trình khác, bạn sẽ thấy tầm quan trọng và phổ biến của những toán tử này. Toán tử so sánh
Toán tử logic và thứ tự ưu tiên
Ý nghĩa của các toán tử Và, Hoặc, Phủ định không chỉ đúng trong PHP mà còn đúng trong các ngôn ngữ lập trình khác. Nhầm lẫn giữa toán tử gán (=) và toán tử so sánh bằng (==) là lỗi lập trình PHP rất hay gặp, bạn nên chú ý điều này. Bạn không cần phải mở đóng ngoặc quá nhiềuỞ các câu lệnh mẫu trên có lẽ bạn đã để ý rằng toán tử so sánh được ưu tiên hơn toán tử logic, do vậy trong câu lệnh như: $a > $b && $c > 5Thì PHP sẽ kiểm tra xem $a có lớn hơn $b không, rồi kiểm tra $c có lớn hơn 5 không, cuối cùng mới thực hiện toán tử logic. Nhờ vậy, bạn không phải viết câu lệnh dài dòng như thế này: ($a > $b) && ($c > 5)Về khoảng cách giữa các biến và toán tử logic cũng như toán tử so sánhNếu bạn viết các toán tử sát sàn sạt vào biến, câu lệnh vẫn chạy bình thường, ví dụ: $a = 6; $b = 5; $c = 7; if ($a>$b&&$c>5) {echo "cả hai điều kiện đều đúng";}Nhưng nhìn chung chúng ta nên tránh kiểu viết này vì nó dễ gây nhầm lẫn. Chúng ta nên viết như sau: $a = 6; $b = 5; $c = 7; if ($a > $b && $c > 5) {echo "cả hai điều kiện đều đúng";}Hoặc nếu có lười, tiện thì viết như dưới cũng được: $a = 6; $b = 5; $c = 7; if ($a>$b && $c>5) {echo "cả hai điều kiện đều đúng";}Nhưng cần hết sức tránh toán tử logic bị dính vào các biến, vì như vậy rất khó phân biệt, dễ sai sót. array array_diff ( array $array1, array $array2 [, array $array3 ...] ); So sánh array1 với array2 và trả về sự khác nhau. Trả về một mảng chứa các sự khác nhau. Lưu chương trình trên trong một file có tên là test.php trong htdocs, sau đó mở trình duyệt và gõ địa chỉ http://localhost:8080/test.php sẽ cho kết quả:
Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.
Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube: Các bạn ở Hà Nội có thể tham gia khóa học thứ 9 của vietjackteam (đang tuyển sinh) vào cuối tháng 10/2018 do anh Nguyễn Thanh Tuyền, admin vietjack.com trực tiếp giảng dạy tại Hà Nội. Chi tiết nội dung khóa học tham khỏa link : Khóa học Java.Các bạn học CNTT, điện tử viễn thông, đa phương tiện, điện-điện tử, toán tin có thể theo học khóa này. Số lượng các công việc Java hoặc .NET luôn gấp ít nhất 3 lần Android hoặc iOS trên thị trường tuyển dụng. Khóa online= Đi phỏng vấn, Khóa offline= Đi phỏng vấn+ 1.5 tháng thực tập ngoài doanh nghiệp. Mọi người có thể xem demo nội dung khóa học tại địa chỉ Video demo khóa học Offline Các bạn ở xa học không có điều kiện thời gian có thể tham dự khóa Java online để chủ động cho việc học tập. Từ tháng 4/2018, VietJack khuyến mại giá SỐC chỉ còn 250k cho khóa học, các bạn có thể trả lại tiền nếu không hài lòng về chất lượng trong 1 tháng, liên hệ facebook admin fb.com/tuyen.vietjack để thanh toán chuyển khoản hoặc thẻ điện thoại, khóa học bằng Tiếng Việt với gần 100 video, các bạn có thể chủ động bất cứ lúc nào, và xem mãi mãi. Thông tin khóa học tại Khóa học Java Online trên Udemy Follow fanpage của team https://www.facebook.com/vietjackteam/ hoặc facebook cá nhân Nguyễn Thanh Tuyền https://www.facebook.com/tuyen.vietjack để tiếp tục theo dõi các loạt bài mới nhất về Java,C,C++,Javascript,HTML,Python,Database,Mobile.... mới nhất của chúng tôi. tong_hop_ham_trong_php.jsp
Chủ đề: PHP / MySQL Trả lời: Sử dụngstrcmp()hàmPHPBạn có thể sử dụng hàmstrcmp() để dễ dàng so sánh hai chuỗi.Hàm này nhận hai chuỗistr1 vàstr2 dưới dạng tham số.Hàmstrcmp() trả về kết quả < 0nếustr1 là ít hơnstr2;trả về> 0nếustr1lớn hơnstr2và 0 nếu chúng bằng nhau. Hãy xem một ví dụ để hiểu về cơ bản hàm này hoạt động như thế nào:
Ví dụHàm strcmp()so sánh hai chuỗi theo cách phân biệt chữ hoa chữ thường. Nếu bạn muốn so sánh không phân biệt chữ hoa chữ thường, bạn có thể sử dụng hàm strcasecmp(). Câu hỏi liên quanDưới đây là một số câu hỏi thường gặp khác liên quan đến chủ đề này:
Trong bất kỳ loại lập trình nào, bạn sẽ luôn gặp 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ể có nhiều hơn để so sánh, 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 mà 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 được xây dựng . == toán tửCách phổ biến nhất bạn sẽ thấy khi so sánh hai chuỗi chỉ đơn giản bằng cách sử dụng toán tử == nếu hai chuỗi bằng nhau thì nó trả về giá trị true. Mã này sẽ trả về rằng các chuỗi khớp nhau, nhưng nếu các chuỗi không nằm trong cùng một trường hợp thì nó sẽ không khớp. Nếu tất cả các chữ cái trong một chuỗi đều viết hoa thì điều này sẽ trả về false và các chuỗi không khớp.if('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 sẽ trả về sai. 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. Chức năng strcmpMộ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. if(strcmp('string1', 'string1') == 0) { echo ' Strings match. '; } else { echo ' Strings do not match. '; }Điều này nếu câu lệnh sẽ trả về true và echo mà chuỗi khớp với. 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ữ in hoa thì hàm sẽ không trả về 0. Chức năng strcasecmpCác ví dụ trước sẽ không cho phép bạn so sánh các chuỗi trường hợp khác nhau, hàm sau sẽ cho phép bạn so sánh các chuỗi không phân biệt chữ hoa chữ thường. if(strcasecmp('string1', 'string1') == 0) { echo ' Strings match. '; } else { echo ' Strings do not match. '; } if(strcasecmp('string1', 'String1') == 0) { echo ' Strings match. '; } else { echo ' Strings do not match. '; } if(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 với nhau, điều đó có nghĩa là chúng ta có thể sử dụng hàm này khi so sánh các chuỗi được người dùng nhập vào. |