[PHP] Prüfen ob in einem String zahlen sind?

traffic

Well-known member
5 Mai 2006
675
25
Hallo,

der Benutzer soll bei mir in der Suche nach Textelemten und nach ID's suchen können. Jedoch wie bekomme ich raus, ob er gerade ein Text oder eine Zahl eingetippt hat?

Mit is_string() kommt immer string raus und wenn ich sowas wie
if($search_text>0) mache, dann gilt sowas auch für 3B...

Hat jemand eine Idee wie ich das überprüfen kann?


Mit freundlichen Grüßen
Traffic
 
Ich weiß nicht wirklich ob du das willst...

Prüft, ob die gegebene Variable numerisch ist. Numerische Strings bestehen aus einem optionalen Zeichen, einer Anzahl Ziffern, einem optionalen Dezimalteil und einem optionalen Exponentialteil. Folglich ist +0123.45e6 ein gültiger numerischer Wert. Die hexadezimale Schreibweise (0xFF) ist ebenfalls erlaubt aber nur ohne Vorzeichen, Dezimalstellen und Exponentialpart.

Ansonsten ließe sich das auf Ganzzahlen mit is_int einschränken.
(Edit: hm.. wobei das ggf. auch nicht optimal ist und 0x1A eine gültige Hex-Ganzzahl sein dürfte.. außer du verarbeitest die.. sollte kein Problem sein; https://www.php.net/manual/de/language.types.integer.php; Ansonsten würde ich zu regEx greifen)