العوامل الحسابية
<?php
echo 7 + 3; // 10
echo 7 - 3; // 4
echo 7 * 3; // 21
echo 7 / 2; // 3.5
echo 7 % 2; // 1 (الباقي)
echo 2 ** 3; // 8 (الأُس)
?>
عوامل المقارنة
<?php
var_dump(5 == "5"); // true (يقارن القيمة فقط)
var_dump(5 === "5"); // false (يقارن القيمة والنوع)
var_dump(5 != 3); // true
var_dump(5 <=> 3); // 1 (عامل السفينة الفضائية)
?>
⚠️ مهم:
==يقارن القيمة فقط (مع تحويل تلقائي)، و===يقارن القيمة والنوع. فضّل===لتجنّب مفاجآت التحويل.
عامل السفينة الفضائية <=>
يُرجع -1 أو 0 أو 1 — مفيد للترتيب:
<?php
echo 1 <=> 2; // -1 (أصغر)
echo 2 <=> 2; // 0 (يساوي)
echo 3 <=> 2; // 1 (أكبر)
?>
العوامل المنطقية
<?php
var_dump(true && false); // false (و)
var_dump(true || false); // true (أو)
var_dump(!true); // false (نفي)
?>
دمج null (??)
يُرجع القيمة الأولى غير المعدومة — مثالي للقيم الافتراضية:
<?php
$username = $_GET["user"] ?? "زائر";
// لو user غير موجود → "زائر" بلا خطأ
$config ??= "افتراضي"; // أسند فقط إن كان null
?>
العوامل النصّية
<?php
$a = "مرحبا";
$a .= " بالعالم"; // الدمج والإسناد
echo $a; // مرحبا بالعالم
?>
أخطاء شائعة
- استخدام
==حيث يجب===فتحدث مقارنات غير متوقّعة (مثل0 == "نص"). - نسيان
??والاعتماد على فحوصissetمطوّلة.
🎯 التالي: الشروط (if/switch/match).