mirror of
https://github.com/skipperbent/simple-php-router.git
synced 2026-06-17 00:37:52 +00:00
Optimized InputHandler to better support nested values.
This commit is contained in:
@@ -171,14 +171,11 @@ class InputHandler
|
||||
foreach ($array as $key => $value) {
|
||||
|
||||
// Handle array input
|
||||
if (\is_array($value) === false) {
|
||||
$list[$key] = new InputItem($key, $value);
|
||||
continue;
|
||||
if (\is_array($value) === true) {
|
||||
$value = $this->parseInputItem($value);
|
||||
}
|
||||
|
||||
$output = $this->parseInputItem($value);
|
||||
|
||||
$list[$key] = $output;
|
||||
$list[$key] = new InputItem($key, $value);
|
||||
}
|
||||
|
||||
return $list;
|
||||
@@ -222,19 +219,18 @@ class InputHandler
|
||||
{
|
||||
$input = $this->find($index, ...$methods);
|
||||
|
||||
$output = [];
|
||||
|
||||
/* Handle collection */
|
||||
if (\is_array($input) === true) {
|
||||
$output = [];
|
||||
/* @var $item InputItem */
|
||||
foreach ($input as $item) {
|
||||
$output[] = $item->getValue();
|
||||
$output[] = \is_array($item) ? $item : $item->getValue();
|
||||
}
|
||||
|
||||
return (\count($output) === 0) ? $defaultValue : $output;
|
||||
}
|
||||
|
||||
return ($input === null || ($input !== null && trim($input->getValue()) === '')) ? $defaultValue : $input->getValue();
|
||||
return ($input === null || (\is_string($input->getValue()) && trim($input->getValue()) === '')) ? $defaultValue : $input->getValue();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -354,4 +350,4 @@ class InputHandler
|
||||
$this->file[$key] = $item;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user