In der PHP -Entwicklung müssen wir häufig Daten von Benutzern verarbeiten, um sicherzustellen, dass diese Daten vor einer weiteren Verarbeitung oder Speicherung gültig sind. Formulardaten enthalten normalerweise verschiedene Arten von Werten, z. B. Zahlen, Zeichenfolgen oder sogar Nullwerte. Bei der Verarbeitung dieser Daten ist es wichtig, die Gültigkeit seines Datentyps sicherzustellen.
Die Funktion is_nan () wird in PHP verwendet, um festzustellen, ob ein Wert eine "Nichtnummer" ist (nicht eine Nummer, die als NAN bezeichnet wird). Obwohl NAN normalerweise bei den Operationen schwimmender numerischer Typen auftritt, kann sie auch eine wichtige Rolle bei der Verarbeitungsformatdaten spielen, insbesondere wenn die vom Benutzer eingegebenen Daten überprüft werden.
In diesem Artikel wird die Verwendung der IS_NAN () -Funktion in der Datenverarbeitung von PHP -Formularen effektiv vorgestellt, um sicherzustellen, dass die verarbeiteten Daten mit den Erwartungen übereinstimmen.
NAN (nicht eine Zahl) ist ein besonderer Wert der Art der schwimmenden Punktzahl, die "ungültige Zahl" darstellt. NAN tritt normalerweise in folgenden Situationen auf:
Das Berechnungsergebnis ist eine ungültige Zahl, wie 0 geteilt durch 0
Bei der Konvertierung nicht numerischer Werte in schwimmende Zahlen
Beispielsweise gibt der folgende Code NAN zurück:
<?php
$number = 0 / 0; // 0Divide durch0
echo $number; // Ausgabe NaN
?>
Die Funktion is_nan () wird verwendet, um zu prüfen, ob ein Wert NAN ist. Es gibt einen Booleschen Wert zurück:
Wenn der Wert NAN ist, geben Sie True zurück
Wenn der Wert nicht NAN ist, geben Sie false zurück
<?php
$value = 0 / 0; // Erstellen aNaNWert
if (is_nan($value)) {
echo "Dies ist aNaNWert。";
} else {
echo "Dies ist kein ANaNWert。";
}
?>
Bei der Verarbeitung von Formdaten können die vom Benutzer eingegebenen Daten unerwartet in NAN konvertiert werden. Wenn der Benutzer beispielsweise einige ungültige Zahlen (z. B. Buchstaben) in das Eingabefeld eingibt, kann PHP bei der Durchführung einer numerischen Konvertierung NAN generieren. Zu diesem Zeitpunkt können wir is_nan () verwenden, um festzustellen, ob es ungültige Zahlen gibt.
Angenommen, wir haben ein Formular, in dem der Benutzer auffordert, eine Nummer einzugeben. Wenn der Benutzer einen ungültigen Wert (z. B. einen Buchstaben oder einen Nullwert) eingibt, müssen wir überprüfen, ob es sich um NAN handelt, und der Benutzer zum Wiedereintritt auffordern.
HTML Formcode:
<form method="post" action="process_form.php">
<label for="number">Bitte geben Sie eine Nummer ein:</label>
<input type="text" id="number" name="number">
<input type="submit" value="einreichen">
</form>
PHP -Code ( process_form.php ):
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$userInput = $_POST["number"];
// Versuchen Sie, die Eingabe in eine schwebende Nummer umzuwandeln
$numericValue = (float) $userInput;
// Überprüfen Sie, ob es istNaN
if (is_nan($numericValue)) {
echo "Sie haben eingegebenWert不Ja有效的数字,Bitte gehen Sie wieder ein!";
} else {
echo "Die gültige Nummer, die Sie eingegeben haben: " . $numericValue;
}
}
?>
In diesem Beispiel:
Die vom Benutzer eingereichten Formulardaten werden über $ _post empfangen.
Dann versuchen wir, den Eingangswert in eine schwebende Zahl umzuwandeln. Wenn die Konvertierung fehlschlägt (d. H. Die Eingabe ist eine ungültige Zahl), gibt PHP die NAN zurück.
Verwenden Sie schließlich die Funktion is_nan (), um zu überprüfen, ob der Wert NAN ist. In diesem Fall wird der Benutzer aufgefordert, sich wieder einzulassen.
Angenommen, wir sammeln eine URL -Adresse im Formular und möchten überprüfen, ob diese Adresse gültig ist. In diesem Fall kann die URL einen NAN -Wert enthalten, und wenn ein Teil der URL eine illegale Nummer ist, kann die NAN zurückgegeben werden. Wir können die URL in Verbindung mit der Funktion is_nan () überprüfen.
Hier ist ein Beispiel: Angenommen, wir haben ein Formular für den Benutzer, um eine URL einzugeben:
<form method="post" action="https://gitbox.net/validate_url.php">
<label for="url">Bitte geben Sie einen einURL:</label>
<input type="text" id="url" name="url">
<input type="submit" value="einreichen">
</form>
Prozessformdaten in validate_url.php :
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$url = $_POST["url"];
// prüfenURLIst es gültig oder nicht
$urlParts = parse_url($url);
// Angenommen, wir kümmern uns nur umURLDer Gastteil von Teil von
$hostname = isset($urlParts['host']) ? $urlParts['host'] : null;
if (is_nan($hostname)) {
echo "UngültigURL,Bitte gehen Sie wieder ein!";
} else {
echo "Sie haben eingegebenURLJa: " . htmlspecialchars($url);
}
}
?>
In der PHP -Formdatenverarbeitung ist die Funktion is_nan () ein sehr nützliches Tool, mit dem Entwickler erkennen können, ob die vom Benutzer eingegebene Nummer NAN ist. Dies ist wichtig, um die Gültigkeit der Eingabedaten zu gewährleisten, insbesondere bei der Verarbeitung numerischer Konvertierungen, Berechnungen oder Extrahieren von Daten aus einer URL. Durch die Kombination geeigneter Überprüfung und Eingabeaufforderungen können Entwickler falsche Eingaben der Benutzer effektiv vermeiden und die Benutzererfahrung verbessern.