$data * @return array */ protected function getArrayArg(string $argName, array $data): array { return true === key_exists($argName, $data) && true === is_array($data[$argName]) ? $data[$argName] : []; } /** * @param array $data */ protected function getIntArg(string $argName, array $data): int { return true === key_exists($argName, $data) && true === is_numeric($data[$argName]) ? (int)$data[$argName] : 0; } /** * @param array $data */ protected function getIntArgIfPresent(string $argName, array $data): ?int { return true === key_exists($argName, $data) && true === is_numeric($data[$argName]) ? (int)$data[$argName] : null; } /** * @param array $data */ protected function getStringArg(string $argName, array $data): string { return true === key_exists($argName, $data) && (true === is_string($data[$argName]) || true === is_numeric($data[$argName])) ? (string)$data[$argName] : ''; } /** * @param array $data */ protected function getStringArgIfPresent(string $argName, array $data): ?string { return true === key_exists($argName, $data) && (true === is_string($data[$argName]) || true === is_numeric($data[$argName])) ? (string)$data[$argName] : null; } /** * @param array $data * @return array */ protected function getArrayArgIfPresent(string $argsName, array $data): ?array { return true === key_exists($argsName, $data) && true === is_array($data[$argsName]) ? $data[$argsName] : null; } }