mirror of
https://github.com/php/doc-ru.git
synced 2026-03-24 07:42:22 +01:00
140 lines
5.0 KiB
XML
140 lines
5.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<!-- EN-Revision: 16934048f79c6e117cd16a23c09c1b2ea502e284 Maintainer: sergey Status: ready -->
|
||
<!-- Reviewed: no -->
|
||
<sect1 xml:id="language.operators.arithmetic">
|
||
<title>Арифметические операторы</title>
|
||
<titleabbrev>Арифметика</titleabbrev>
|
||
<simpara>
|
||
Помните школьные основы арифметики? Описанные ниже операторы работают так же.
|
||
</simpara>
|
||
<table>
|
||
<title>Арифметические операции</title>
|
||
<tgroup cols="3">
|
||
<thead>
|
||
<row>
|
||
<entry>Пример</entry>
|
||
<entry>Название</entry>
|
||
<entry>Результат</entry>
|
||
</row>
|
||
</thead>
|
||
<tbody>
|
||
<row>
|
||
<entry><code>+$a</code></entry>
|
||
<entry>Идентичность</entry>
|
||
<entry>
|
||
Конвертация значения переменной <varname>$a</varname> в целое число (<type>int</type>)
|
||
или число с плавающей точкой (<type>float</type>), если нужно.
|
||
</entry>
|
||
</row>
|
||
<row>
|
||
<entry><code>-$a</code></entry>
|
||
<entry>Отрицание</entry>
|
||
<entry>Смена знака <varname>$a</varname>.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><code>$a + $b</code></entry>
|
||
<entry>Сложение</entry>
|
||
<entry>Сумма <varname>$a</varname> и <varname>$b</varname>.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><code>$a - $b</code></entry>
|
||
<entry>Вычитание</entry>
|
||
<entry>Разность <varname>$a</varname> и <varname>$b</varname>.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><code>$a * $b</code></entry>
|
||
<entry>Умножение</entry>
|
||
<entry>Произведение <varname>$a</varname> и <varname>$b</varname>.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><code>$a / $b</code></entry>
|
||
<entry>Деление</entry>
|
||
<entry>Частное от деления <varname>$a</varname> на <varname>$b</varname>.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><code>$a % $b</code></entry>
|
||
<entry>Деление по модулю</entry>
|
||
<entry>Целочисленный остаток от деления <varname>$a</varname> на <varname>$b</varname>.</entry>
|
||
</row>
|
||
<row>
|
||
<entry><code>$a ** $b</code></entry>
|
||
<entry>Возведение в степень</entry>
|
||
<entry>
|
||
Возведение значения переменной <varname>$a</varname> в степень,
|
||
указанную в переменной <varname>$b</varname>.
|
||
</entry>
|
||
</row>
|
||
</tbody>
|
||
</tgroup>
|
||
</table>
|
||
<simpara>
|
||
Оператор деления <literal>/</literal> возвращает значение с типом <type>float</type>,
|
||
если только оба операнда не значения с типом <type>int</type>
|
||
или <link linkend="language.types.numeric-strings">числовые строки</link>, которые приводятся
|
||
к типу <type>int</type>, и числитель не кратен знаменателю, при которых возвращается целочисленное значение.
|
||
Для целочисленного деления вызывают функцию <function>intdiv</function>.
|
||
</simpara>
|
||
<simpara>
|
||
При делении по модулю операнды преобразовываются в целые числа (<type>int</type>) (путём удаления дробной части)
|
||
до начала операции. Для деления по модулю чисел с плавающей точкой вызывают
|
||
функцию <function>fmod</function>.
|
||
</simpara>
|
||
<para>
|
||
Результат операции остатка от деления <literal>%</literal> получит тот же знак,
|
||
что и делимое — то есть, результат выражения <code>$a % $b</code>
|
||
получит тот же знак, что и значение переменной <varname>$a</varname>. Например:
|
||
<example>
|
||
<title>Оператор деления с остатком (Modulo)</title>
|
||
<programlisting role="php">
|
||
<![CDATA[
|
||
<?php
|
||
|
||
var_dump(5 % 3);
|
||
var_dump(5 % -3);
|
||
var_dump(-5 % 3);
|
||
var_dump(-5 % -3);
|
||
|
||
?>
|
||
]]>
|
||
</programlisting>
|
||
&example.outputs;
|
||
<screen>
|
||
<![CDATA[
|
||
int(2)
|
||
int(2)
|
||
int(-2)
|
||
int(-2)
|
||
]]>
|
||
</screen>
|
||
</example>
|
||
</para>
|
||
<sect2 role="seealso">
|
||
&reftitle.seealso;
|
||
<para>
|
||
<simplelist>
|
||
<member><link linkend="ref.math">Математические функции</link></member>
|
||
</simplelist>
|
||
</para>
|
||
</sect2>
|
||
</sect1>
|
||
<!-- Keep this comment at the end of the file
|
||
Local variables:
|
||
mode: sgml
|
||
sgml-omittag:t
|
||
sgml-shorttag:t
|
||
sgml-minimize-attributes:nil
|
||
sgml-always-quote-attributes:t
|
||
sgml-indent-step:1
|
||
sgml-indent-data:t
|
||
indent-tabs-mode:nil
|
||
sgml-parent-document:nil
|
||
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
|
||
sgml-exposed-tags:nil
|
||
sgml-local-catalogs:nil
|
||
sgml-local-ecat-files:nil
|
||
End:
|
||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||
vim: et tw=78 syn=sgml
|
||
vi: ts=1 sw=1
|
||
-->
|