PHP Arithmetic Operators

PHP Arithmetic Operators are used to perform basic arithmetic operations on numerical values in PHP. The arithmetic operators in PHP are similar to other programming languages and allow you to perform addition, subtraction, multiplication, division, modulus, and exponentiation operations.

These operators can be used with numeric data types such as integers, floating-point numbers, and doubles. They are useful when performing calculations or manipulating numeric values within a PHP program. Arithmetic operators can be used with variables, constants, and literal values.

PHP Arithmetic Operators are used to perform basic arithmetic operations on numerical values.

 

PHP Arithmetic Operators Overview

OperatorNameDescriptionExampleResult
+AdditionAdds two numbers or variables.5 + 38
-SubtractionSubtracts one number from another.5 - 32
*MultiplicationMultiplies two numbers or variables.5 * 315
/DivisionDivides one number by another.15 / 35
%ModulusReturns the remainder of division.15 % 43

Using Arithmetic Operators in PHP

Here’s how each operator works step by step:

Addition (+)

<?php
$a = 10;
$b = 20;
$result = $a + $b; // Adds $a and $b
echo "Addition: $result"; // Output: Addition: 30
?>

Subtraction (-)

<?php
$a = 15;
$b = 5;
$result = $a - $b; // Subtracts $b from $a
echo "Subtraction: $result"; // Output: Subtraction: 10
?>

Multiplication (*)

<?php
$a = 5;
$b = 4;
$result = $a * $b; // Multiplies $a and $b
echo "Multiplication: $result"; // Output: Multiplication: 20
?>

Division (/)

<?php
$a = 20;
$b = 4;
$result = $a / $b; // Divides $a by $b
echo "Division: $result"; // Output: Division: 5
?>
  1. Modulus (%): Returns the remainder of the first value divided by the second value Example:
$a = 20;
$b = 3;
$c = $a % $b; // $c is 2

Modulus (%)

<?php
$a = 20;
$b = 6;
$result = $a % $b; // Finds the remainder of $a divided by $b
echo "Modulus: $result"; // Output: Modulus: 2
?>

Example for PHP Arithmetic Operators

<?php
$n=40;
$m=20;
$total=$n+$m; //addition
echo "Addition of two Number:$total<br />";
$total=$n-$m; //subtraction
echo "Subtraction of two Number:$total <br />";
$total=$n*$m; // multiplication
echo "Multiplication of two Number:$total<br />";
$total=$n/$m; //division
echo "Division of two number:$total";
?>

Best Practices for Using PHP Arithmetic Operators

Handle Division by Zero

A. Handle Division by Zero

Division by zero will throw a warning or an error. Always check if the denominator is non-zero before dividing.

<?php
$a = 10;
$b = 0;

if ($b != 0) {
    $result = $a / $b;
    echo "Result: $result";
} else {
    echo "Error: Division by zero is not allowed.";
}
?>

B. Use Parentheses for Complex Calculations

For better readability and to ensure the correct order of operations, use parentheses.

<?php
$a = 10;
$b = 5;
$c = 2;

// Without parentheses, it can be confusing:
$result = $a + $b * $c; // Multiplication has higher precedence
echo "Result without parentheses: $result"; // Output: 20

// With parentheses, the intention is clear:
$result = ($a + $b) * $c;
echo "Result with parentheses: $result"; // Output: 30
?>

C. Use Consistent Variable Naming

Choose meaningful variable names to make your code easier to understand.

 
<?php
$price = 50;
$quantity = 3;
$totalCost = $price * $quantity;
echo "Total Cost: $totalCost"; // Output: Total Cost: 150
?>

D. Format Output with Number Formatting

For monetary or large numbers, format the output for better readability.

<?php
$totalCost = 1234.5678;
echo "Total Cost: " . number_format($totalCost, 2); // Output: Total Cost: 1,234.57
?>

E. Modular Arithmetic for Cyclic Operations

The modulus operator (%) is helpful for cyclic operations, such as calculating a week day.

<?php
$totalDays = 10;
$weekDay = $totalDays % 7; // Cyclic value (0 to 6)
echo "Weekday: $weekDay"; // Output: Weekday: 3
?>

F. Type Safety

Ensure that you are working with numeric values. Use is_numeric() to check variable types if needed.

<?php
$a = "10";
$b = 5;

if (is_numeric($a) && is_numeric($b)) {
    $result = $a + $b;
    echo "Result: $result"; // Output: Result: 15
} else {
    echo "Invalid input. Please use numbers.";
}
?>

G. Avoid Floating-Point Precision Issues

When working with floating-point numbers, be aware of precision errors. Use the bcmath or gmp extensions for high precision arithmetic.

<?php
$a = 0.1 + 0.2;
echo $a; // Output: 0.30000000000000004 (Precision issue)

// Use `bcadd()` for better precision:
$a = bcadd('0.1', '0.2', 2);
echo $a; // Output: 0.30
?>

Real-World Example: Calculate Total Price with Tax

<?php
$price = 100; // Base price of the item
$quantity = 3; // Number of items
$taxRate = 0.15; // 15% tax rate

// Calculate total cost
$subtotal = $price * $quantity; // Multiply price by quantity
$tax = $subtotal * $taxRate;    // Calculate tax
$total = $subtotal + $tax;      // Add tax to subtotal

echo "Subtotal: $" . number_format($subtotal, 2) . "\n";
echo "Tax: $" . number_format($tax, 2) . "\n";
echo "Total: $" . number_format($total, 2) . "\n";
?>