Tôi đã thực hiện một vài thử nghiệm với chuỗi sử dụng '=='. Tôi biết để so sánh chuỗi '==' không phải là cách, nhưng có một hành vi kỳ lạ tôi muốn giải quyết.So sánh chuỗi PHP bằng cách sử dụng '=='
Tôi đang theo dõi tài liệu PHP trong trang này: http://www.php.net/manual/en/language.operators.comparison.php. Đây là thử nghiệm tôi đã làm
<?php
var_dump("100" == "1e2"); //outputs boolean true
var_dump((int) "100"); //int 100
var_dump((int) "1e2"); //int 1
?>
Các tài liệu nói khi chúng ta so sánh chuỗi với những con số, PHP đầu tiên chuyển đổi chuỗi số, nhưng khi tôi chuyển đổi '100' và '1e2' đến các số họ không bằng nhau. So sánh sẽ xuất ra boolean false.
Tại sao hành vi kỳ lạ này? Cảm ơn!
Ngẫu nhiên đây là lý do tại sao tốt nhất nên sử dụng '===' thay vì '==', vì kết quả có thể dự đoán được nhiều hơn! –