W3docs

atan()

Функция atan() в PHP возвращает арктангенс числа — угол, тангенс которого равен заданному значению, в радианах.

Функция atan() в PHP возвращает арктангенс числа — угол, тангенс которого равен этому числу. Результат всегда выражается в радианах. На этой странице рассматриваются синтаксис, параметры, возвращаемое значение, диапазон результатов, а также связь atan() с родственными функциями tan() и atan2().

Что такое функция atan()?

Арктангенс (часто записывается как arctan или tan⁻¹) является обратной функцией тангенса. Если tan(θ) = x, то atan(x) = θ. Таким образом, atan() отвечает на вопрос: «Какой угол имеет данный тангенс?»

Функция принимает один числовой аргумент и возвращает угол в радианах. Поскольку тангенс является периодической функцией и бесконечно повторяется, atan() всегда возвращает угол в главном диапазоне −π/2 до π/2 (приблизительно от −1.5708 до 1.5708 радиан, или от −90° до 90°).

Синтаксис

atan(float $num): float
ЧастьОписание
$numЗначение, для которого вычисляется арктангенс. Допустимо любое вещественное число.
Возвращаемое значениеАрктангенс $num в радианах, в диапазоне от −M_PI/2 до M_PI/2.

Как использовать функцию atan()

Передайте число и получите угол, тангенс которого равен этому числу:

php— editable, runs on the server

Результат будет 0.46364760900081. Значение выражается в радианах, а не в градусах.

Преобразование результата в градусы

Поскольку atan() возвращает радианы, для получения удобочитаемого вывода обычно выполняется преобразование в градусы с помощью rad2deg():

<?php
$radians = atan(1);        // tangent of the angle is 1
echo $radians, "\n";       // 0.78539816339745  (π/4)
echo rad2deg($radians);    // 45
?>

atan(1) равен π/4, поскольку tan(45°) = tan(π/4) = 1.

Справочные значения

Эти результаты иллюстрируют главный диапазон и симметрию функции:

<?php
echo atan(0), "\n";    // 0
echo atan(1), "\n";    // 0.78539816339745   (45°)
echo atan(-1), "\n";   // -0.78539816339745  (-45°)
echo atan(100), "\n";  // 1.5607966601082    (approaches π/2)
echo atan(-100);       // -1.5607966601082   (approaches -π/2)
?>

При стремлении аргумента к положительной бесконечности результат приближается к π/2, но никогда не достигает его; при стремлении к отрицательной бесконечности — приближается к −π/2. Функция является нечётной: atan(-x) === -atan(x).

atan() и atan2()

atan() принимает один аргумент и не может определить, в каком квадранте находится исходный угол, поэтому её результат ограничен диапазоном −π/2…π/2. Если известны как компонента y, так и компонента x точки или вектора, следует использовать atan2() — эта функция учитывает знаки обоих аргументов и возвращает полный угол в диапазоне от −π до π:

<?php
echo atan(1 / 1), "\n";   // 0.78539816339745  (45°)
echo atan2(1, 1), "\n";   // 0.78539816339745  (45°, same here)
echo atan2(-1, -1);       // -2.3561944901923  (-135°, correct quadrant)
?>

atan(-1 / -1) сведётся к atan(1) и потеряет информацию о квадранте, поэтому atan2() предпочтительнее для вычисления направлений и углов векторов.

Типичные сценарии использования

  • Нахождение угла наклона или прямой по её градиенту.
  • Вычисление направления двумерного вектора (предпочтительнее atan2(), если известны обе компоненты).
  • Обратно-тригонометрические вычисления в физике, графике и геометрии.

Связанные функции

  • tan() — тангенс угла (обратная операция).
  • atan2() — арктангенс двух переменных с учётом правильного квадранта.
  • atanh() — обратный гиперболический тангенс.
  • asin() и acos() — арксинус и арккосинус.
  • rad2deg() и deg2rad() — преобразование между радианами и градусами.

Заключение

Функция atan() возвращает арктангенс числа в виде угла в радианах, всегда в пределах от −π/2 до π/2. Помните, что результат выражается в радианах (для перевода в градусы используйте rad2deg()), а при необходимости определить правильный квадрант из отдельных компонент y и x обращайтесь к atan2().

Практика

Практика
Что делает функция atan() в PHP?
Что делает функция atan() в PHP?
Was this page helpful?