In PHP wird die ASIN () -Funktion verwendet, um einen inversen Sinuswert (d. H. Eine inverse trigonometrische Funktion) zu berechnen. Sein Eingabeparameter ist eine schwebende Zahl, die einen Sinuswert darstellt, während der Rückgabewert der entsprechende Radian (in Radians) ist. In praktischen Anwendungen müssen wir jedoch sicherstellen, dass die in die ASIN () -Funktion übergebenen Parameter legal sind, andernfalls gibt die Funktion Falsch zurück oder erzeugt ein falsches Ergebnis. In diesem Artikel wird festgelegt, wie die Eingabeparameter der ASIN () -Funktion legal sind.
Die ASIN () -Funktion in PHP ist eine integrierte mathematische Funktion, die den inversen Sinuswert eines bestimmten Werts zurückgibt. Die spezifische Syntax ist wie folgt:
<span><span><span class="hljs-title function_ invoke__">asin</span></span><span>(</span><span><span class="hljs-keyword">float</span></span><span> </span><span><span class="hljs-variable">$arg</span></span><span>): </span><span><span class="hljs-keyword">float</span></span><span>|</span><span><span class="hljs-literal">false</span></span><span>
</span></span>
$ arg : Eine schwimmende Zahl, die einen Sinuswert darstellt.
Rückgabewert: Gibt den inversen Sinuswert (Radian) zurück und kehrt Falsch zurück, wenn der Eingabeparameter ungültig ist.
Die Definition eines inversen Sinuswerts lautet: Asin (x) ist ein Winkel und sein Sinuswert ist x . Gemäß der mathematischen Definition muss der Eingangsbereich von Asin (x) zwischen [-1, 1] liegen, und jeder Wert außerhalb dieses Bereichs führt zu Berechnungsfehlern.
Zunächst müssen Sie sicherstellen, dass die in die ASIN () -Funktion übergebenen Parameter im Bereich von [-1, 1] liegen. Andernfalls gibt die ASIN () -Funktion FALSE zurück und kann zu unerfüllten Ergebnissen führen.
Sie können die Funktion is_numeric () verwenden, um festzustellen, ob der Parameter eine gültige Zahl ist, und dann festzustellen, ob die Nummer innerhalb eines vernünftigen Bereichs liegt:
<span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">is_valid_asin_input</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$value</span></span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_numeric</span></span><span>(</span><span><span class="hljs-variable">$value</span></span><span>) && </span><span><span class="hljs-variable">$value</span></span><span> >= -</span><span><span class="hljs-number">1</span></span><span> && </span><span><span class="hljs-variable">$value</span></span><span> <= </span><span><span class="hljs-number">1</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">true</span></span><span>;
}
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">false</span></span><span>;
}
</span><span><span class="hljs-variable">$input</span></span><span> = </span><span><span class="hljs-number">0.5</span></span><span>; </span><span><span class="hljs-comment">// Übernehmen Sie Eingabewert</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_valid_asin_input</span></span><span>(</span><span><span class="hljs-variable">$input</span></span><span>)) {
</span><span><span class="hljs-variable">$result</span></span><span> = </span><span><span class="hljs-title function_ invoke__">asin</span></span><span>(</span><span><span class="hljs-variable">$input</span></span><span>);
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"asin(<span class="hljs-subst">$input</span></span></span><span>) = " . </span><span><span class="hljs-variable">$result</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"Invalid input for asin() function."</span></span><span>;
}
</span></span>
Im obigen Code prüfen wir zunächst, ob der Eingabewert eine gültige Zahl über is_numeric () ist, und bestimmen dann, ob er sich im Bereich von [-1, 1] befindet. Wenn die Bedingungen erfüllt sind, wird die ASIN () -Funktion aufgerufen und das Ergebnis wird ausgegeben, andernfalls ist die Eingabeaufforderung ungültig.
Die vom ASIN () -Funktion akzeptierten Parameter müssen numerische Typen sein. Wenn ein nicht numerischer Typ (z. B. Zeichenfolgen, Boolesche Werte, Arrays usw.) übergeben wird, muss er angemessen verarbeitet werden. Beispielsweise können Sie zuerst die Funktion is_numeric () verwenden, um zu überprüfen, ob der Eingabwert eine gültige Nummer ist.
<span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">is_valid_asin_input</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$value</span></span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_numeric</span></span><span>(</span><span><span class="hljs-variable">$value</span></span><span>)) {
</span><span><span class="hljs-variable">$value</span></span><span> = (</span><span><span class="hljs-keyword">float</span></span><span>)</span><span><span class="hljs-variable">$value</span></span><span>; </span><span><span class="hljs-comment">// An schwebendem numerischen Typ gegossen</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$value</span></span><span> >= -</span><span><span class="hljs-number">1</span></span><span> && </span><span><span class="hljs-variable">$value</span></span><span> <= </span><span><span class="hljs-number">1</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">true</span></span><span>;
}
}
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">false</span></span><span>;
}
</span></span>
In dieser Version der Funktion prüfen wir zunächst, ob der Eingabewert ein numerischer Wert ist, und konvertieren ihn dann in einen Float -Typ ( Float ), um sicherzustellen, dass der Eingabwert den Anforderungen der Funktion ASIN () erfüllt.
Manchmal können die Eingabeparameter null oder andere unerwartete Typen sein. An diesem Punkt können wir diese Situationen im Voraus überprüfen und entsprechende Fehlermeldungen oder Standardwerte zurückgeben.
<span><span><span class="hljs-function"><span class="hljs-keyword">function</span></span></span><span> </span><span><span class="hljs-title">is_valid_asin_input</span></span><span>(</span><span><span class="hljs-params"><span class="hljs-variable">$value</span></span></span><span>) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_null</span></span><span>(</span><span><span class="hljs-variable">$value</span></span><span>)) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">false</span></span><span>; </span><span><span class="hljs-comment">// NULL Der Wert ist direkt ungültig</span></span><span>
}
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">is_numeric</span></span><span>(</span><span><span class="hljs-variable">$value</span></span><span>)) {
</span><span><span class="hljs-variable">$value</span></span><span> = (</span><span><span class="hljs-keyword">float</span></span><span>)</span><span><span class="hljs-variable">$value</span></span><span>;
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-variable">$value</span></span><span> >= -</span><span><span class="hljs-number">1</span></span><span> && </span><span><span class="hljs-variable">$value</span></span><span> <= </span><span><span class="hljs-number">1</span></span><span>) {
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">true</span></span><span>;
}
}
</span><span><span class="hljs-keyword">return</span></span><span> </span><span><span class="hljs-literal">false</span></span><span>;
}
</span></span>
In dieser verbesserten Version der Funktion prüfen wir zunächst, ob der Eingabewert null ist, und wenn ja, wird er direkt falsch zurückgegeben. Dies verhindert, dass die nachfolgende Beurteilungslogik weiter eingeben wird, wenn die Eingabe null ist.
Bei der Verwendung von PHPs ASIN () -Funktion ist es wichtig sicherzustellen, dass die Eingabeparameter in einem angemessenen Bereich liegen. Durch die Bestimmung, ob der Eingabewert eine gültige Zahl ist und innerhalb des Bereichs von [-1, 1] fehlerhafte Ergebnisse aufgrund illegaler Eingaben vermieden werden können. Entwickler können Helferfunktionen schreiben, um festzustellen, ob die Eingabe auf der Grundlage der tatsächlichen Bedürfnisse legal ist, und überprüfen, bevor Sie die Funktion ASIN () aufrufen. Dies kann die Robustheit des Programms verbessern und unvorhersehbare Fehler während der Laufzeit vermeiden.