public static function datetime($check, $dateFormat = 'ymd', $regex = null)
    {
        if ($check instanceof DateTimeInterface) {
            return true;
        }
        if (is_object($check)) {
            return false;
        }
        $valid = false;
        if (is_array($check)) {
            $check = static::_getDateString($check);
            $dateFormat = 'ymd';
        }
        $parts = explode(' ', $check);
        if (!empty($parts) && count($parts) > 1) {
            $date = rtrim(array_shift($parts), ',');
            $time = implode(' ', $parts);
            $valid = static::date($date, $dateFormat, $regex) && static::time($time);
        }

        return $valid;
    }