Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СИТ_Ответы_5 курс.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
577 Кб
Скачать
☆

12. Основы php. Математические функции

  • abs — Модуль числа

  • acos — Арккосинус

  • acosh — Гиперболический арккосинус

  • asin — Арксинус

  • asinh — Гиперболический арксинус

  • atan2 — Арктангенс двух переменных

  • atan — Арктангенс

  • atanh — Гиперболический арктангенс

  • base_convert — Преобразование числа между произвольными системами счисления

  • bindec — Двоичное в десятичное

  • ceil — Округляет дробь в большую сторону

  • cos — Косинус

  • cosh — Гиперболический косинус

  • decbin — Переводит число из десятичной системы счисления в двоичную

  • dechex — Переводит число из десятичной системы счисления в шестнадцатиричную

  • decoct — Переводит число из десятичной системы счисления в восьмеричную

  • deg2rad — Преобразует значение из градусов в радианы

  • exp — Вычисляет число e в степени

  • expm1 — Возвращает exp(number) - 1, рассчитанное таким образом, что результат точен, даже если number близок к нулю.

  • floor — Округляет дробь в меньшую сторону

  • fmod — Возвращает дробный остаток от деления по модулю

  • getrandmax — Вовзращает максимально возможное случайное число

  • hexdec — Переводит число из шестнадцатиричной системы счисления в десятичную

  • hypot — Рассчитывает длину гипотенузы прямоугольного треугольника

  • is_finite — Проверяет, является ли значение допустимым конечным числом

  • is_infinite — Проверяет, является ли значение бесконечным

  • is_nan — Проверяет, является ли значение "не числом"

  • lcg_value — Комбинированный линейно конгруэнтный генератор

  • log10 — Десятичный логарифм

  • log1p — Возвращает log(1 + number), рассчитанный таким, что результат точен, даже если значение number близко к нулю

  • log — Натуральный логарифм

  • max — Возвращает наибольшее значение

  • min — Находит наименьшее значение

  • mt_getrandmax — Показывает максимально возможное значение случайного числа

  • mt_rand — Генерирует случайное значение методом mt

  • mt_srand — Переинициализирует генератор случайных чисел mt

  • octdec — Переводит число из восьмеричной системы счисления в десятичную

  • pi — Возвращает число Пи

  • pow — Возведение в степень

  • rad2deg — Преобразует значение из радианов в градусы

  • rand — Генерирует случайное число

  • round — Округляет число типа float

  • sin — Синус

  • sinh — Гиперболический синус

  • sqrt — Квадратный корень

  • srand — Изменяет начальное число генератора псевдослучайных чисел

  • tan — Тангенс

  • tanh — Гиперболический тангенс

13. Основы php. Арифметические операции в рнр

14. Основы php. Операторы. Приоритет операторов

Приоритет оператора определяет, насколько "тесно" он связывает между собой два выражения. Например, выражение 1 + 5 * 3 вычисляется как 16, а не 18, поскольку оператор умножения ("*") имеет более высокий приоритет, чем оператор сложения ("+"). Круглые скобки могут использоваться для принудительного указания порядка выполнения операторов. Например, выражение(1 + 5) * 3 вычисляется как 18.

Если операторы имеют равный приоритет, то будут ли они выполняться справа налево или слева направо определяется их ассоциативностью - смотрите примеры ниже.

В следующей таблице приведен список операторов, отсортированный по убыванию их приоритетов. Операторы, размещенные в одной строке имеют одинаковый приоритет и порядок их выполнения определяется исходя из их ассоциативности.

Порядок выполнения операторов

Ассоциативность

Оператор

Дополнительная информация

неассоциативна

clone new

clone и new

левая

[

array()

правая

++ -- ~ (int) (float) (string) (array) (object) (bool) @

типы и increment/decrement

неассоциативна

instanceof

типы

правая

!

логические операторы

левая

* / %

арифметические операторы

левая

+ - .

арифметические операторы и строковые операторы

левая

<< >>

побитовые операторы

неассоциативна

< <= > >=

операторы сравнения

неассоциативна

== != === !== <>

операторы сравнения

левая

&

побитовые операторы и ссылки

левая

^

побитовые операторы

левая

|

побитовые операторы

левая

&&

логические операторы

левая

||

логические операторы

левая

? :

тернарный оператор

правая

= += -= *= /= .= %= &= |= ^= <<= >>= =>

операторы присваивания

левая

and

логические операторы

левая

xor

логические операторы

левая

or

логические операторы

левая

,

множество применений

У операторов с равным приоритетом левая ассоциативность подразумевает, что выражение вычисляется слева направо, правая ассоциативность, соответственно, подразумевает противоположный порядок. Неассоциативные операторы с равным приоритетом не могут комбинироваться сами с собой. Например, выражение 1 < 2 > 1 в PHP недопустимо, тогда как выражение 1 <= 1 == 1 корректно, потому что операторT_IS_EQUAL имеет меньший приоритет, чем оператор T_IS_SMALLER_OR_EQUAL.

Пример #1 Ассоциативность

<?php $a = 3 * 3 % 5; // (3 * 3) % 5 = 4 $a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2 $a = 1; $b = 2; $a = $b += 3; // $a = ($b += 3) -> $a = 5, $b = 5 // при совместном использовании ++ и + результат будет неопределенным $a = 1; echo ++$a + $a++; // может вывести 4 или 5 ?>

Использование скобок, даже там где в них нет строгой необходимости, обычно заметно улучшает читабельность кода.

Замечание:

Несмотря на то, что оператор = имеет низший приоритет, чем большинство остальных операторов, PHP все равно позволяет использовать следующую конструкцию: if (!$a = foo()), которая присваивает переменной $a результат выполнения функции foo().