ÊåöÜëáéï 15. Τελεστές

Ðßíáêáò Ðåñéå÷ïìÝíùí
Προτεραιότητα τελεστών
Αριθμητικοί Τελεστές
Ανάθεση Τελεστών
Δυαδικοί Τελεστές
Τελεστές σύγκρισης
Τελεστές Ελέγχου Λαθών
Τελεστές Εκτέλεσης
Τελεστές Αύξησης/Μειώσης
Λογικοί Τελεστές
Τελεστές για strings
Τελεστές Πινάκων

Προτεραιότητα τελεστών

Η προτεραιότητα των τελεστών καθορίζει το πόσο "σφιχτά" συνδέονται δυο εκφράσεις μαζί. Για παράδειγμα, στην έκφραση 1 + 5 * 3, η απάντηση είναι 16 και όχι 18 επειδή ο τελεστής του πολλαπλασιασμού ("*") έχει προτεραιότητα σε σχέση με τον τελεστή της πρόσθεσης ("+"). Οι παρενθέσεις μπορούν να χρησιμοποιηθούν για να αλλάξουν τις προτεραιότητες, αν χρειάζεται. Για παράδειγμα: Το (1 + 5) * 3 έχει ως αποτέλεσμα το 18.

Ο ακόλουθος πίνακας παραθέτει την προτεραιότητα των τελεστών με την χαμηλότερη προτεραιότητα να παρατίθεται πρώτη.

Ðßíáêáò 15-1. Operator Precedence

ΣχετικότηταΤελεστές
αριστερή,
αριστερήor
αριστερήxor
αριστερήand
δεξιάprint
αριστερή = += -= *= /= .= %= &= |= ^= <<= >>=
αριστερή? :
αριστερή||
αριστερή&&
αριστερή|
αριστερή^
αριστερή&
Χωρίς σύνδεση== != === !==
Χωρίς σύνδεση< <= > >=
Αριστερή<< >>
Αριστερή+ - .
Αριστερή* / %
Δεξιά! ~ ++ -- (int) (float) (string) (array) (object) @
Δεξιά[
Χωρίς σύνδεσηnew

Óçìåßùóç: Παρόλο που το ! έχει προτεραιότητα έναντι του =, η PHP επιτρέπει εκφράσεις παρόμοιες με την ακόλουθη: if (!$a = foo()), και σε κάθε περίπτωση το αποτέλεσμα από την foo() τοποθετείται στην $a.