<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Arithmetic Operators</title> </head> <body><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="language.operators.precedence.html">Operator Precedence</a></div> <div class="next" style="text-align: right; float: right;"><a href="language.operators.assignment.html">Assignment Operators</a></div> <div class="up"><a href="language.operators.html">Operators</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div><hr /><div id="language.operators.arithmetic" class="sect1"> <h2 class="title">Arithmetic Operators</h2> <p class="simpara"> Remember basic arithmetic from school? These work just like those. </p> <table class="doctable table"> <caption><strong>Arithmetic Operators</strong></caption> <thead> <tr> <th>Example</th> <th>Name</th> <th>Result</th> </tr> </thead> <tbody class="tbody"> <tr> <td>-$a</td> <td>Negation</td> <td>Opposite of <var class="varname"><var class="varname">$a</var></var>.</td> </tr> <tr> <td>$a + $b</td> <td>Addition</td> <td>Sum of <var class="varname"><var class="varname">$a</var></var> and <var class="varname"><var class="varname">$b</var></var>.</td> </tr> <tr> <td>$a - $b</td> <td>Subtraction</td> <td>Difference of <var class="varname"><var class="varname">$a</var></var> and <var class="varname"><var class="varname">$b</var></var>.</td> </tr> <tr> <td>$a * $b</td> <td>Multiplication</td> <td>Product of <var class="varname"><var class="varname">$a</var></var> and <var class="varname"><var class="varname">$b</var></var>.</td> </tr> <tr> <td>$a / $b</td> <td>Division</td> <td>Quotient of <var class="varname"><var class="varname">$a</var></var> and <var class="varname"><var class="varname">$b</var></var>.</td> </tr> <tr> <td>$a % $b</td> <td>Modulus</td> <td>Remainder of <var class="varname"><var class="varname">$a</var></var> divided by <var class="varname"><var class="varname">$b</var></var>.</td> </tr> </tbody> </table> <p class="simpara"> The division operator ("/") returns a float value unless the two operands are integers (or strings that get converted to integers) and the numbers are evenly divisible, in which case an integer value will be returned. </p> <p class="simpara"> Operands of modulus are converted to integers (by stripping the decimal part) before processing. </p> <p class="para"> The result of the modulus operator <em>%</em> has the same sign as the dividend — that is, the result of <em>$a % $b</em> will have the same sign as <var class="varname"><var class="varname">$a</var></var>. For example: <div class="informalexample"> <div class="example-contents"> <div class="phpcode"><code><span style="color: #000000"> <span style="color: #0000BB"><?php<br /><br /></span><span style="color: #007700">echo (</span><span style="color: #0000BB">5 </span><span style="color: #007700">% </span><span style="color: #0000BB">3</span><span style="color: #007700">).</span><span style="color: #DD0000">"\n"</span><span style="color: #007700">; </span><span style="color: #FF8000">// prints 2<br /></span><span style="color: #007700">echo (</span><span style="color: #0000BB">5 </span><span style="color: #007700">% -</span><span style="color: #0000BB">3</span><span style="color: #007700">).</span><span style="color: #DD0000">"\n"</span><span style="color: #007700">; </span><span style="color: #FF8000">// prints 2<br /></span><span style="color: #007700">echo (-</span><span style="color: #0000BB">5 </span><span style="color: #007700">% </span><span style="color: #0000BB">3</span><span style="color: #007700">).</span><span style="color: #DD0000">"\n"</span><span style="color: #007700">; </span><span style="color: #FF8000">// prints -2<br /></span><span style="color: #007700">echo (-</span><span style="color: #0000BB">5 </span><span style="color: #007700">% -</span><span style="color: #0000BB">3</span><span style="color: #007700">).</span><span style="color: #DD0000">"\n"</span><span style="color: #007700">; </span><span style="color: #FF8000">// prints -2<br /><br /></span><span style="color: #0000BB">?></span> </span> </code></div> </div> </div> </p> <p class="simpara"> See also the manual page on <a href="ref.math.html" class="link">Math functions</a>. </p> </div><hr /><div class="manualnavbar" style="text-align: center;"> <div class="prev" style="text-align: left; float: left;"><a href="language.operators.precedence.html">Operator Precedence</a></div> <div class="next" style="text-align: right; float: right;"><a href="language.operators.assignment.html">Assignment Operators</a></div> <div class="up"><a href="language.operators.html">Operators</a></div> <div class="home"><a href="index.html">PHP Manual</a></div> </div></body></html>