acos()
La funzione acos() in PHP restituisce l'arcocoseno di un numero, ovvero l'angolo il cui coseno corrisponde al valore fornito, espresso in radianti.
La funzione acos() in PHP restituisce l'arcocoseno (coseno inverso) di un numero, ovvero l'angolo il cui coseno è uguale al valore dato. È l'inverso matematico di cos(): mentre cos() trasforma un angolo in un rapporto, acos() trasforma quel rapporto di nuovo in un angolo. L'angolo restituito è espresso in radianti.
Questa pagina tratta la sintassi, l'intervallo di input valido, come convertire il risultato in gradi, i casi limite come input fuori intervallo e il rapporto di acos() con le altre funzioni trigonometriche PHP.
Sintassi
acos(float $num): float$num— un float nell'intervallo da-1a1(inclusi). Questo è necessario perché il coseno di qualsiasi angolo reale ricade sempre in quell'intervallo.- Valore restituito — l'arcocoseno di
$num, in radianti, nell'intervallo da0aπ(circa da0a3.14159). Se$numè al di fuori di-1..1, la funzione restituisceNAN(Not a Number).
Un Esempio di Base
Passiamo 0.5 ad acos() e otteniamo circa 1.0472 radianti — che corrisponde esattamente a π / 3, l'angolo il cui coseno è 0.5.
Convertire il Risultato in Gradi
Poiché acos() restituisce radianti, nella maggior parte dei casi è necessario convertire in gradi per un output leggibile. Usa rad2deg() oppure moltiplica per 180 / pi():
<?php
$angle_in_radians = acos(0.5);
$angle_in_degrees = rad2deg($angle_in_radians);
echo $angle_in_degrees; // 60
?>L'angolo il cui coseno è 0.5 è quindi 60 gradi. La conversione inversa — trasformare i gradi in radianti prima di chiamare una funzione trigonometrica — si effettua con deg2rad().
Valori Comuni
Questi punti di riferimento sono utili da memorizzare quando si lavora con acos():
<?php
echo acos(1); // 0 (cos 0° = 1)
echo "\n";
echo acos(0); // 1.5707963… (π/2, i.e. 90°)
echo "\n";
echo acos(-1); // 3.1415926… (π, i.e. 180°)
?>Gestire Input Fuori Intervallo
Se si passa un valore inferiore a -1 o superiore a 1, nessun angolo reale può produrre un coseno del genere, quindi acos() restituisce NAN. È opportuno gestire questo caso quando l'input proviene da dati utente o calcoli:
<?php
$value = 2; // outside the valid -1..1 range
if ($value >= -1 && $value <= 1) {
echo rad2deg(acos($value));
} else {
echo "Input must be between -1 and 1.";
}
// Output: Input must be between -1 and 1.
?>È anche possibile rilevare il risultato con is_nan() dopo aver chiamato la funzione.
Quando Si Usa acos()?
acos() è utile ogni volta che si vuole ricavare un angolo da un rapporto di coseno:
- Geometria e grafica — calcolare l'angolo tra due vettori usando la formula del prodotto scalare.
- Navigazione — calcolare rotte e distanze ortodromiche su una sfera.
- Fisica — determinare angoli nel moto dei proiettili o nei problemi ondulatori.
Appartiene alla stessa famiglia di asin() (arcoseno) e atan() (arcotangente). Per la variante iperbolica, vedere acosh().
Conclusione
La funzione acos() restituisce l'arcocoseno di un numero come angolo in radianti, accettando input da -1 a 1 e restituendo NAN per qualsiasi valore al di fuori di tale intervallo. Ricorda di convertire il risultato in gradi con rad2deg() quando hai bisogno di un output leggibile, e di validare l'input che potrebbe ricadere al di fuori del dominio valido.