Operators combine sub-expressions to create more complex expressions. The general syntax for using operators is:
Expression Operator Expression
ColdFusion has four types of operators:
Arithmetic Operators | |
---|---|
Operator | Description |
+, -, *, / | The basic arithmetic operators: addition, subtraction, multiplication, and division. In the case of division, the right operand cannot be zero. |
+, - | Unary arithmetic operators for setting the sign of a number either positive or negative (+ or -). |
MOD | Returns the remainder (modulus) after a number is divided by a divisor. The result has the same sign as the divisor. The right operand cannot be zero. For example, 11 MOD 4 is 3. |
\ | Divides two integer values. Use the \ (trailing slash) to separate the integers. The right operand cannot be zero. For example, 9 \ 4 is 2. |
^ | Returns the result of a number raised to a power (exponent). Use the ^ (caret) to separate the number from the power. The left operand cannot be zero. For example, 2 ^ 3 is 8. |
String Operators | |
---|---|
Operator | Description |
& | Concatenates strings. |
ColdFusion's decision, or comparison, operators produce a Boolean TRUE/FALSE.
Decision Operators | |
---|---|
Operator | Description |
IS | Performs a case-insensitive comparison of the two values and returns true if the values are identical. |
IS NOT | Opposite behavior of is. |
CONTAINS | Checks to see if the value on the left is contained in the value on the right and returns true if it is. |
DOES NOT CONTAIN | Opposite behavior of contains. |
GREATER THAN | Checks to see if the value on the left is greater than the value on the right and returns true if it is. |
LESS THAN | Opposite behavior of greater than. |
GREATER THAN OR EQUAL TO | Checks to see if the value on the left is greater than or equal to the value on the right and returns true if it is. |
LESS THAN OR EQUAL TO | Checks to see if the value on the left is less than or equal to the value on the right and returns true if it is. |
You can replace some Boolean operators with shorthand notations to make your CFML more compact, as shown in the following table:
Shorthand Notation for Boolean Operators | |
---|---|
Operator | Alternative name(s) |
IS | EQUAL, EQ |
IS NOT | NOT EQUAL, NEQ |
CONTAINS | Not available |
DOES NOT CONTAIN | Not available |
GREATER THAN | GT |
LESS THAN | LT |
GREATER THAN OR EQUAL TO | GTE, GE |
LESS THAN OR EQUAL TO | LTE, LE |
Boolean, or Logical, operators perform logical connective and negation operations. The operands of Boolean operators are Boolean (TRUE/FALSE) values.
Boolean Operators | |
---|---|
Operator | Description |
NOT | Reverses the value of an argument. For example, NOT TRUE is FALSE and vice versa. |
AND | Returns TRUE if both arguments are TRUE; returns FALSE otherwise. For example, TRUE AND TRUE is TRUE, but TRUE AND FALSE is FALSE. |
OR | Returns TRUE if any of the arguments is TRUE; returns FALSE otherwise. For example, TRUE OR FALSE is TRUE, but FALSE OR FALSE is FALSE. |
XOR | Exclusive or--either, or, but not both. Returns TRUE if the truth values of both arguments are different; returns FALSE otherwise. For example, TRUE XOR TRUE is FALSE, but TRUE XOR FALSE is TRUE. |
EQV | Equivalence both true or both false. The EQV operator is the opposite of the XOR operator. For example, TRUE EQV TRUE is TRUE, but TRUE EQV FALSE is FALSE. |
IMP | Implication. A IMP B is the truth value of the logical statement "If A Then B." A IMP B is FALSE only when A is TRUE and B is FALSE. |