النتيجة: غير متساويين.
$x = "0"; // string
$y = 0; // integer
var_dump($x === $y); // false
var_dump($x == $y); // true
مع === لا يحدث أي تحويل، و"0" نص بينما 0 عدد، فلا يتطابقان.
لماذا “0” حالة خاصة؟
في PHP يُعتبر النص "0" قيمة falsy:
if ("0") { echo 'never printed'; }
empty("0"); // true
هذا يفاجئ كثيرين عند التحقق من مدخلات النماذج، فانتبه له.