Si lees el mensaje que te puse, lo que te indico es que el problema esta en tu logica, ctype_digit solo funciona con strings, y si haces tu clase como la tienes te va a dar true, intenta esto:
Te va a dar bool(false), ya que ctype_digit solo funciona con strings, prueba esto:
Eso da bool(true), si quieres comprobar si la variable es un numero usa is_int.
SAludos.