אופרטורים
Table of Contents
- אופרטורים מתמטיים
- אופרטור השמה
- אופרטורים בינאריים
- אופרטורי השוואה
- אופרטורים לטיפול בשגיאות
- אופרטורי הפעלה
- אופרטורי הוספה והפחתה.
- אופרטורים לוגיים
- אופרטורים שעובדים על מחרוזות
- אופרטורים על מערכים
קדימות אופרטורים
סדר קדימות האופרטורים קובע מה יחושב לפני מה בביטוי רב אופרטורים, למשל בבטוי: 1 + 5 * 3התשובה תהיה16ולא18 מכיוון שהאופרטור (*) קודם לאופרטור (+), מבחינה מתמטית. במקרים שרוצים לכפות קדימות ניתן להשתמש בסוגריים למשל: (1 + 5) * 3נותן18.
בטבלה הבאה מסודרים האופרטורים לפי סדר הקדימות שלהם, מהחלש לחזק.
| Associativity | Operators |
|---|---|
| left | , |
| left | or |
| left | xor |
| left | and |
| right | |
| right | = += -= *= /= .= %= &= |= ^= <<= >>= |
| left | ? : |
| left | || |
| left | && |
| left | | |
| left | ^ |
| left | & |
| non-associative | == != === !== |
| non-associative | < <= > >= |
| left | << >> |
| left | + - . |
| left | * / % |
| right | ! ~ ++ -- (int) (float) (string) (array) (object) @ |
| right | [ |
| non-associative | new |
Note: למרות שלאופרטור!יש זכות קדימה על האופרטור=, PHP מרשה ביטויים כמוif (!$a = foo()),כשהתוצאה שמחושבת בביטוי foo() מושמת למשתנה$a.