W3docs

cos()

Функция cos() в PHP возвращает косинус угла. Узнайте синтаксис, примеры и типичные ошибки.

Функция cos() в PHP возвращает косинус угла. Это одна из встроенных тригонометрических функций PHP, незаменимая при работе с углами, волнами, вращениями и геометрией. На этой странице описаны синтаксис, обязательное требование к радианам, диапазон возвращаемых значений, примеры с пояснениями и типичные ошибки.

Синтаксис

cos(float $num): float
  • $num — угол, выраженный в радианах (не в градусах).
  • Возвращаемое значение — косинус $num, всегда float в диапазоне от -1 до 1 включительно.

Радианы, а не градусы

Это самая распространённая ошибка при использовании cos(). PHP ожидает угол в радианах, тогда как люди привыкли мыслить в градусах. Вызов cos(45) не вернёт косинус 45 градусов — он трактует 45 как 45 радиан и возвращает неожиданный результат.

Для перевода градусов в радианы используйте deg2rad(). Формула такова:

radians = degrees × (π / 180)

Базовый пример

php— editable, runs on the server

Здесь мы берём 45 градусов, переводим их в радианы с помощью deg2rad(), а затем передаём результат в cos(). Вывод составит примерно 0.70710678118655 — это √2 / 2, точное значение косинуса 45 градусов.

Распространённые углы

В таблице ниже показаны значения, которые возвращает cos() для нескольких знакомых углов. Обратите внимание, что cos(M_PI / 2) не возвращает точно 0: результатом будет крошечное число вроде 6.1232339957368E-17. Это нормальное округление с плавающей точкой — π не может быть представлено точно, поэтому результат «очень близок к нулю», а не равен чистому нулю.

<?php
echo cos(0), "\n";              // 1
echo cos(M_PI), "\n";           // -1
echo cos(M_PI / 2), "\n";       // 6.1232339957368E-17 (≈ 0)
echo cos(deg2rad(60)), "\n";    // 0.5
?>

M_PI — встроенная константа PHP для значения π. См. pi() для функциональной формы.

Когда использовать cos()?

cos() применяется далеко за пределами учебных задач по математике:

  • Графика и игры — вращение точки вокруг начала координат или равномерное размещение объектов по окружности.
  • Анимация — создание плавного, циклического движения (значение, колеблющееся между -1 и 1).
  • Физика и обработка сигналов — моделирование волн и периодического поведения.

Размещение точек по окружности

Практическое применение косинуса — вычисление координаты X точки на окружности заданного радиуса:

<?php
$radius = 100;

for ($deg = 0; $deg < 360; $deg += 90) {
    $x = $radius * cos(deg2rad($deg));
    echo "At {$deg}°, x = " . round($x, 2) . "\n";
}
?>

Это выведет 100, 0, -100 и 0 (координаты X при 0°, 90°, 180° и 270°), причём значения при 90° и 270° будут практически равны нулю с точностью до погрешности представления чисел с плавающей точкой.

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

  • sin() — синус угла.
  • tan() — тангенс угла.
  • acos() — обратная функция: по косинусу возвращает угол.
  • deg2rad() — перевод градусов в радианы перед вызовом cos().

Заключение

cos() возвращает косинус угла, заданного в радианах, всегда возвращая float в диапазоне от -1 до 1. Главное — помнить о необходимости перевода градусов с помощью deg2rad() и о том, что для углов вроде 90° вместо чистого нуля будет получено крошечное число из-за особенностей арифметики с плавающей точкой. Учитывая это, cos() является надёжным строительным блоком для графики, анимации и любых периодических или геометрических вычислений.

Практика

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