انتقل إلى محتوى الدرس

PHP Operator Precedence Master Table الجدول المرجعي لأولويات تنفيذ المعاملات

أتقن معاملات المقارنة الصارمة والمرنة، ومعامل السفينة الفضائية، والمعاملات المنطقية، ودمج الفارغ، وجدول أولويات المعاملات في PHP 8.
1 صفوف تعليمية
PHP
0 مشاهدة

شرح صفوف ومحتوى الفقرة

الصف 1 شرح توضيحي

تحدد أولويات المعاملات أي جزء من التعبير المركب ينفذه مفسر PHP أولاً عند عدم وجود أقواس.

  • معامل الأسس ** والنفي المنطقي ! لهما أولوية أعلى من الضرب * والقسمة / وباقي القسمة %.
  • معاملات المقارنة (< و=== و<=>) تُنفذ قبل &&، الذي يُنفذ قبل ||، الذي يُنفذ قبل ??.
  • في PHP 8.0+، تداخل المعاملات الثلاثية ? : بدون أقواس يطلق خطأً قاتلاً؛ لذا استخدم الأقواس الصريحة دائماً!

يُحسب الأس 2 ** 2 (4) أولاً ثم الضرب 5 * 4 (20) ثم الجمع (30)؛ ولأن && أقوى من || تُقيّم العبارة كـ (false && false) || true.

الأولوية (من الأعلى للأدنى)المعاملاتاتجاه التجميعالقاعدة الأهم
1 (Highest)**RightExponentiation runs before unary/math
2!, (int), ++RightLogical NOT and type casts
3*, /, %LeftMultiplication, division, modulo
4+, -LeftAddition and subtraction
5<, <=, >, >=Non-assocRelational comparisons
6==, !=, ===, !==, <=>Non-assocEquality and spaceship
7&& then || then ??Left / Right&& binds tighter than ||
8? : then =, ??=Non-assoc / RightAssignment happens after && / ||
9 (Lowest)and, xor, orLeftWord operators bind WEAKER than =!
PHP
<?php
$calc = 10 + 5 * 2 ** 2;
$logic = false && false || true;
$explicit = false && (false || true);

echo "Calc: $calc\n";
var_dump($logic, $explicit);
خلاصة المعرفة ومحطة الانتقال

ملخص الدرس

حصاد الدرس

مراجعة مركّزة لأهم المفاهيم والقواعد الهندسية التي أتقنتها في هذا الدرس قبل التطبيق العملي

ماذا تعلّمت في هذا الدرس؟

تحدد أولويات المعاملات أي جزء من التعبير المركب ينفذه مفسر PHP أولاً عند عدم وجود أقواس. معامل الأسس ** والنفي المنطقي ! لهما أولوية أعلى من الضرب * والقسمة / وباقي القسمة %. معاملات المقارنة (< و=== و<=>) تُنفذ قبل &&، الذي يُنفذ قبل ||، الذي يُنفذ قبل ??. في PHP 8.0+، تداخل المعاملات الثلاثية ? : بدون أقواس يطلق خطأً قاتلاً؛ لذا استخدم الأقواس الصريحة دائماً!