Heim >Backend-Entwicklung >PHP-Problem >PHP ermittelt, ob eine Zeichenfolge eine Zahl ist
is_numeric – Erkennen, ob eine Variable eine Zahl oder ein numerisches Zeichen ist (Empfohlenes Lernen: PHP-Programmierung vom Einstieg bis zur Beherrschung )
<?php $tests = array( "31", 1380, "1e4", "not numeric", array(), 9.1 ); foreach ($tests as $element) { if (is_numeric($element)) { echo "'{$element}' is numeric", PHP_EOL; } else { echo "'{$element}' is NOT numeric", PHP_EOL; } } ?>
Ergebnis der Programmausführung:
'31' is numeric '1380' is numeric '1e4' is numeric 'not numeric' is NOT numeric 'Array' is NOT numeric '9.1' is numeric
Die Zeichenfolge 1e4 wird ebenfalls als Zahl beurteilt.
Die Funktion is_numeric unterstützt nicht nur Dezimalzahlen, sondern auch Zahlen vom Typ Hexadezimal. Daher müssen Sie bei der Überprüfung rein natürlicher Zahlen wie der verwendeten QQ-Zahlen mit der Ganzzahlfunktion intval() zusammenarbeiten.
<?php $id = 0xff33669f; if (is_numeric($id)) echo $id, '符合要求。';//output 4281558687符合要求。 else echo $id, '不符合要求。'; ?>
Wenn Sie eine Ganzzahl beurteilen müssen, können Sie die Funktion is_int() verwenden, um die Situation zu vermeiden, in der einige Zeichenfolgen auch als zulässige Zahlen betrachtet werden.
is_numeric kann bestimmen, ob eine Variable eine Zahl oder eine numerische Zeichenfolge ist, aber ihr Bestimmungsbereich ist zu groß. Ganzzahlen, Dezimalzahlen, Exponentialdarstellungen und Hexadezimalwerte werden alle das Urteil bestehen. Normalerweise ist es bei der Bestimmung der ID etwas unangemessen, sie zu verwenden.
Heute habe ich eine neue Beurteilungsfunktion entdeckt: ctype_digit, die nur Ganzzahlen beurteilen kann, was besser ist als is_numeric. Zu den weiteren Funktionen gehören ctype_xdigit zur Bestimmung hexadezimaler Ganzzahlen, ctype_alpha zur Bestimmung von Buchstaben usw.
Das obige ist der detaillierte Inhalt vonPHP ermittelt, ob eine Zeichenfolge eine Zahl ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!