|
@@ -22,12 +22,20 @@ abstract class AbstractPostSerializable implements PostSerializableInterface {
|
|
|
return new static(...array_values($vars));
|
|
|
}
|
|
|
|
|
|
- final public static function getPostParams(): array {
|
|
|
+ protected static function removePrefix(string $param): string {
|
|
|
+ return ltrim(strstr($param, '-'), '-');
|
|
|
+ }
|
|
|
+
|
|
|
+ final public static function getPostParams(bool $short = false): array {
|
|
|
|
|
|
$vars = [];
|
|
|
|
|
|
- foreach ((new ReflectionClass(static::class))->getConstructor()->getParameters() as $param)
|
|
|
- $vars[$param->getName()] = !($param->isOptional() || $param->allowsNull());
|
|
|
+ foreach ((new ReflectionClass(static::class))->getConstructor()->getParameters() as $param) {
|
|
|
+ if ($short)
|
|
|
+ $vars[$param->getName()] = !($param->isOptional() || $param->allowsNull());
|
|
|
+ else
|
|
|
+ $vars[sprintf('%s-%s', strtolower(basename(str_replace('\\', DIRECTORY_SEPARATOR, static::class))), $param->getName())] = !($param->isOptional() || $param->allowsNull());
|
|
|
+ }
|
|
|
|
|
|
return $vars;
|
|
|
}
|