diff --git a/src/Command.php b/src/Command.php index 790ada8..a3bfe11 100644 --- a/src/Command.php +++ b/src/Command.php @@ -53,13 +53,13 @@ class Command } else { $type = $parameter->getType(); if ($type instanceof ReflectionNamedType && $type->isBuiltin()) { - $type = $type->getName(); + $type = ($type->allowsNull() ? "?" : "") . $type->getName(); } else { $type = null; } } - if ($parameter->isOptional()) $type = "?{$type}"; + if ($parameter->isDefaultValueAvailable()) $type = "{$type}=".\json_encode($parameter->getDefaultValue(),\JSON_UNESCAPED_SLASHES); if ($type !== null) $args[$name] = $type; }