method) { self::INTEGER => $this->integerFormat($value), self::FLOAT => $this->floatFormat($value), self::JSON => $this->jsonFormat($value), self::STRING => $this->stringFormat($value), self::ARRAY => $this->arrayFormat($value), }; } /** * @param string|null $value * @return bool */ public function jsonFormat(?string $value): bool { var_dump(json_validate($value), $value); return json_validate($value); } /** * @param mixed $value * @return bool */ public function arrayFormat(mixed $value): bool { return is_array($value); } /** * @param mixed $value * @return bool */ public function stringFormat(mixed $value): bool { var_dump(is_string($value), $value); return is_string($value); } /** * @param mixed $value * @return bool */ public function integerFormat(mixed $value): bool { return (int)$value == $value; } /** * @param mixed $value * @return bool */ public function floatFormat(mixed $value): bool { return (float)$value == $value; } }