Những phép so sánh có thể gây lỗi bảo mật trong PHP

Cập nhật ngày 16/03/2024
Lượt xem: 64

Cái này khá thú vị, các bạn dự đoán kết quả ra sao cho những phép so sánh dưới đây:

$input = 0;

if('defaultpassword' == $input){
  echo 'true';
} else {
  echo 'false';
}if('1e3' == '1000'){
  echo 'true';
} else {
  echo 'false';
}

Chắc chắn các bạn sẽ nghĩ rằng cả 2 phép so sánh đều ra kết quả sai. Bởi vì nhìn qua cả về giá trị và hình thức thì chả thấy giống nhau gì cả :)

- Phép thứ nhất so sánh 1 chuỗi và 1 số

- Phép thứ hai so sánh 2 chuỗi với nhau

Tuy nhiên kết quả hoàn toàn không như bạn nghĩ.

Nguồn: PhoNho