## Expressions and Operators

An expression is a bit of PHP that can be evaluated to produce a value. The simplest expressions are literal values and variables. A literal value evaluates to itself, while a variable evaluates to the value stored in the variable. More complex expressions can be formed using simple expressions and operators .

An operator takes some values (the operands) and does something (for instance, adds them together). Operators are written as punctuation symbols—for instance, the `+` and - familiar to us from math. Some operators modify their operands, while most do not.

Table 2-3 summarizes the operators in PHP, many of which were borrowed from C and Perl. The column labeled “P” gives the operator’s precedence; the operators are listed in precedence order, from highest to lowest. The column labeled “A” gives the operator’s associativity, which can be L (left-to-right), R (right-to-left), or N (non-associative).

Table 2-3. PHP operators
 P A Operator Operation 19 N `new` Create new object 18 `[` Array subscript 17 R `!` Logical NOT R `~` Bitwise NOT R `++` Increment R `--` Decrement R `(int)`, `(double)`, `(string)`, `(array)`, `(object)` Cast R `@` Inhibit errors 16 L `*` Multiplication L `/` Division L `%` Modulus 15 L `+` Addition L `-` Subtraction L `.` String concatenation 14 L `<<` Bitwise shift left L `>>` Bitwise shift right 13 N `<`, `<=` Less than, less than or equal N `>`, `>=` Greater than, greater than or equal 12 N `==` Value equality N `!=`, `<>` Inequality N `===` Type and value equality N `!==` Type and value inequality 11 L `&`

Get Programming PHP, 2nd Edition now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.