W3docs

asin()

A função asin() em PHP retorna o arco seno de um número — o ângulo cujo seno é o valor fornecido, expresso em radianos.

A função asin() em PHP retorna o arco seno (seno inverso) de um número — ou seja, o ângulo cujo seno é igual ao valor fornecido. É o inverso matemático de sin(): enquanto sin() converte um ângulo em uma razão, asin() converte essa razão de volta em um ângulo. O ângulo retornado é expresso em radianos.

Esta página aborda a sintaxe, o intervalo de entrada válido, como converter o resultado em graus, casos extremos como entrada fora do intervalo e como asin() se relaciona com as outras funções trigonométricas do PHP.

Sintaxe

asin(float $num): float
  • $num — um float no intervalo de -1 a 1 (inclusive). Isso é obrigatório porque o seno de qualquer ângulo real sempre está nesse intervalo.
  • Valor de retorno — o arco seno de $num, em radianos, no intervalo de -π/2 a π/2 (aproximadamente -1.5708 a 1.5708). Se $num estiver fora de -1..1, a função retorna NAN (Não é um Número).

Um Exemplo Básico

php— editable, runs on the server

Passamos 0.5 para asin() e ele retorna aproximadamente 0.5236 radianos — que é exatamente π / 6, o ângulo cujo seno é 0.5.

Convertendo o Resultado em Graus

Como asin() retorna radianos, você quase sempre converte para graus para uma saída legível por humanos. Use rad2deg() ou multiplique por 180 / pi():

<?php
$angle_in_radians = asin(0.5);
$angle_in_degrees = rad2deg($angle_in_radians);

echo $angle_in_degrees; // 30
?>

Portanto, o ângulo cujo seno é 0.5 é 30 graus. A conversão inversa — transformar graus em radianos antes de chamar uma função trigonométrica — é feita com deg2rad().

Valores Comuns

Estes pontos de referência são úteis para memorizar ao trabalhar com asin():

<?php
echo asin(-1);  // -1.5707963… (-π/2, i.e. -90°)
echo "\n";
echo asin(0);   // 0           (sin 0° = 0)
echo "\n";
echo asin(1);   // 1.5707963…  (π/2, i.e. 90°)
?>

Tratando Entradas Fora do Intervalo

Se você passar um valor menor que -1 ou maior que 1, o seno de nenhum ângulo real poderia produzi-lo, portanto asin() retorna NAN. Proteja-se contra isso quando a entrada vem de dados do usuário ou de cálculos:

<?php
$value = 2; // outside the valid -1..1 range

if ($value >= -1 && $value <= 1) {
    echo rad2deg(asin($value));
} else {
    echo "Input must be between -1 and 1.";
}
// Output: Input must be between -1 and 1.
?>

Você também pode detectar o resultado com is_nan() após chamar a função.

Quando Devo Usar asin()?

asin() aparece sempre que você precisa recuperar um ângulo a partir de uma razão de seno:

  • Geometria e gráficos — encontrar um ângulo de elevação a partir da razão do lado oposto com a hipotenusa.
  • Navegação — calcular latitudes e rumos em trigonometria esférica.
  • Física — resolver ângulos em oscilação, óptica (lei de Snell) e problemas de projéteis.

Ela pertence à mesma família que acos() (arco cosseno) e atan() (arco tangente). Para a variante hiperbólica, veja asinh().

Conclusão

A função asin() retorna o arco seno de um número como um ângulo em radianos, aceitando entrada de -1 a 1 e retornando NAN para qualquer valor fora desse intervalo. Lembre-se de converter o resultado em graus com rad2deg() quando precisar de uma saída legível, e de validar a entrada que pode estar fora do domínio válido.

Prática

Prática
Qual é a função de 'asin' em PHP?
Qual é a função de 'asin' em PHP?
Was this page helpful?