rad2deg()
Функция rad2deg() в PHP преобразует угол из радиан в градусы. Узнайте синтаксис и примеры использования.
Функция PHP rad2deg() преобразует угол, измеренный в радианах, в эквивалентный угол в градусах. Она является точной обратной функцией для deg2rad() и удобна всякий раз, когда математическая функция возвращает результат в радианах, а вам нужно понятное человеку значение в градусах.
Что такое радианы и градусы?
И радианы, и градусы измеряют углы — это просто две разные единицы, как метры и футы.
- Полный круг равен
360градусам, или2πрадианам. - Таким образом,
1радиан равен180/πградусам, что составляет примерно57.29578градуса.
Встроенные тригонометрические функции PHP (sin(), cos(), atan(), …) работают с радианами, поэтому rad2deg() — это мост, который переводит их результаты обратно в градусы, понятные большинству людей.
Синтаксис
rad2deg(float $num): float$num— угол в радианах, который нужно преобразовать.- Возвращаемое значение — тот же угол, выраженный в градусах, в виде
float.
Как использовать функцию rad2deg()
Передайте значение в радианах, и rad2deg() вернёт угол в градусах:
Здесь 1.047 радиана (близко к π/3) преобразуется примерно в 60 градусов.
Распространённые справочные значения
Используя константу PHP M_PI (то же значение, что возвращает pi()), хорошо известные углы преобразуются следующим образом:
<?php
echo rad2deg(M_PI); // 180
echo "\n";
echo rad2deg(M_PI / 2); // 90
echo "\n";
echo rad2deg(M_PI / 4); // 45
echo "\n";
echo rad2deg(2 * M_PI); // 360
?>rad2deg() против deg2rad()
Эти две функции являются зеркальным отображением друг друга, поэтому преобразование в одну сторону и обратно возвращает исходное значение:
<?php
$degrees = 90;
$radians = deg2rad($degrees); // 1.5707963267949
$back = rad2deg($radians); // 90
echo $back; // 90
?>Используйте deg2rad() перед вызовом тригонометрической функции и rad2deg() после неё.
Практический пример: считывание угла из cos()
Обратные тригонометрические функции возвращают радианы. Преобразуйте результат с помощью rad2deg(), чтобы получить читаемый угол, и round(), чтобы обрезать длинное число с плавающей точкой:
<?php
// acos() returns the angle (in radians) whose cosine is 0.5
$radians = acos(0.5);
$degrees = rad2deg($radians);
echo round($degrees, 2); // 60
?>Что нужно учитывать
rad2deg()всегда возвращаетfloat, даже для целочисленных результатов, таких как180. Используйтеround()илиnumber_format(), когда нужно аккуратное отображение значения.- Функция изменяет только единицу измерения, а не сам угол —
rad2deg(M_PI)иM_PIописывают одно и то же направление. - Передача нечислового string вызывает
TypeErrorв PHP 8+; убедитесь, что аргумент является числовым.
Заключение
rad2deg() — небольшой, но необходимый помощник для любого PHP-кода, работающего с углами. Используйте её вместе с deg2rad(), тригонометрическими функциями и pi(), чтобы свободно переходить между радианами, которые использует математический движок, и градусами, понятными людям.