Tom: wie überprüfe ich eine Array ob nur Zahlenwerte drin sind

Beitrag lesen

Hello Martin,

Das hat ms88 sicherlich so gemeint:

if ($_array === array_filter($_array, 'is_int')) ? echo "nur integers" : echo "error";

nein, hat er/sie sicher nicht. Denn das ist eine lustige Mischung aus if-Statement und dem ternären Operator (salopp auch Fragezeichen-Operator genannt). In der Kombination ist das ein Syntaxfehler; man sollte sich schon für eine Variante entscheiden.

Und: if-Statement und ternärer Operator sind unter bestimmten Voraussetzungen äquivalent, aber nicht immer.

Musst Du wieder meinen ganzen Feierabend stören?
Selbstverständlich hast Du Recht.
Ms88 hat augenscheinlich nur aus der Hüfte geschossen.

  
echo ($_array === array_filter($_array, 'is_int')) ? echo "nur integers" : echo "error");  

Könnte doch aber passen, oder?

Die Einwände von bubble sollten natürlich auch nicht außen vor bleiben. Warum sollte man das arme Programm quälen und das Array mehrfach durchgehen lassen.

Außerdem bleibt es ja meistens auch nicht bei der Prüfung auf einen einzigen Typ, sondern das eine Element soll Integer sein, das andere http (Webadresse per HEAD-Request erreichbar), das nächste ein zumindest logisch richtiger eMail-Name, das nächste soll keine Schimpfworte enthalten, usw. ...

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bikers-lodge.com