@@ -13,7 +13,7 @@ |
||
| 13 | 13 | |
| 14 | 14 | public function __construct(array $serializers = []) |
| 15 | 15 | { |
| 16 | - foreach ($serializers as $name => $serializer) { |
|
| 16 | + foreach ($serializers as $name => $serializer){ |
|
| 17 | 17 | $this->register($name, $serializer); |
| 18 | 18 | } |
| 19 | 19 | } |
@@ -13,7 +13,8 @@ |
||
| 13 | 13 | |
| 14 | 14 | public function __construct(array $serializers = []) |
| 15 | 15 | { |
| 16 | - foreach ($serializers as $name => $serializer) { |
|
| 16 | + foreach ($serializers as $name => $serializer) |
|
| 17 | + { |
|
| 17 | 18 | $this->register($name, $serializer); |
| 18 | 19 | } |
| 19 | 20 | } |
@@ -1,3 +1,3 @@ |
||
| 1 | 1 | <?php |
| 2 | 2 | |
| 3 | -return ; |
|
| 3 | +return; |
|
@@ -17,15 +17,15 @@ discard block |
||
| 17 | 17 | public function __construct( |
| 18 | 18 | string $directory, |
| 19 | 19 | private readonly array $loaders = [] |
| 20 | - ) { |
|
| 20 | + ){ |
|
| 21 | 21 | $this->directory = \rtrim($directory, '/'); |
| 22 | 22 | } |
| 23 | 23 | |
| 24 | 24 | public function has(string $section): bool |
| 25 | 25 | { |
| 26 | - foreach ($this->loaderExtensions() as $extension) { |
|
| 26 | + foreach ($this->loaderExtensions() as $extension){ |
|
| 27 | 27 | $filename = \sprintf('%s/%s.%s', $this->directory, $section, $extension); |
| 28 | - if (\file_exists($filename)) { |
|
| 28 | + if (\file_exists($filename)){ |
|
| 29 | 29 | return true; |
| 30 | 30 | } |
| 31 | 31 | } |
@@ -35,15 +35,15 @@ discard block |
||
| 35 | 35 | |
| 36 | 36 | public function load(string $section): array |
| 37 | 37 | { |
| 38 | - foreach ($this->loaderExtensions() as $extension) { |
|
| 38 | + foreach ($this->loaderExtensions() as $extension){ |
|
| 39 | 39 | $filename = \sprintf('%s/%s.%s', $this->directory, $section, $extension); |
| 40 | - if (!\file_exists($filename)) { |
|
| 40 | + if (!\file_exists($filename)){ |
|
| 41 | 41 | continue; |
| 42 | 42 | } |
| 43 | 43 | |
| 44 | - try { |
|
| 44 | + try{ |
|
| 45 | 45 | return $this->getLoader($extension)->loadFile($section, $filename); |
| 46 | - } catch (LoaderException $e) { |
|
| 46 | + }catch (LoaderException $e){ |
|
| 47 | 47 | throw new LoaderException("Unable to load config `{$section}`: {$e->getMessage()}", $e->getCode(), $e); |
| 48 | 48 | } |
| 49 | 49 | } |
@@ -23,9 +23,11 @@ discard block |
||
| 23 | 23 | |
| 24 | 24 | public function has(string $section): bool |
| 25 | 25 | { |
| 26 | - foreach ($this->loaderExtensions() as $extension) { |
|
| 26 | + foreach ($this->loaderExtensions() as $extension) |
|
| 27 | + { |
|
| 27 | 28 | $filename = \sprintf('%s/%s.%s', $this->directory, $section, $extension); |
| 28 | - if (\file_exists($filename)) { |
|
| 29 | + if (\file_exists($filename)) |
|
| 30 | + { |
|
| 29 | 31 | return true; |
| 30 | 32 | } |
| 31 | 33 | } |
@@ -35,15 +37,20 @@ discard block |
||
| 35 | 37 | |
| 36 | 38 | public function load(string $section): array |
| 37 | 39 | { |
| 38 | - foreach ($this->loaderExtensions() as $extension) { |
|
| 40 | + foreach ($this->loaderExtensions() as $extension) |
|
| 41 | + { |
|
| 39 | 42 | $filename = \sprintf('%s/%s.%s', $this->directory, $section, $extension); |
| 40 | - if (!\file_exists($filename)) { |
|
| 43 | + if (!\file_exists($filename)) |
|
| 44 | + { |
|
| 41 | 45 | continue; |
| 42 | 46 | } |
| 43 | 47 | |
| 44 | - try { |
|
| 48 | + try |
|
| 49 | + { |
|
| 45 | 50 | return $this->getLoader($extension)->loadFile($section, $filename); |
| 46 | - } catch (LoaderException $e) { |
|
| 51 | + } |
|
| 52 | + catch (LoaderException $e) |
|
| 53 | + { |
|
| 47 | 54 | throw new LoaderException("Unable to load config `{$section}`: {$e->getMessage()}", $e->getCode(), $e); |
| 48 | 55 | } |
| 49 | 56 | } |
@@ -13,7 +13,7 @@ |
||
| 13 | 13 | $content = \file_get_contents($filename); |
| 14 | 14 | $data = \json_decode($content, true); |
| 15 | 15 | |
| 16 | - if (\is_null($data)) { |
|
| 16 | + if (\is_null($data)){ |
|
| 17 | 17 | throw new LoaderException(\json_last_error_msg(), \json_last_error()); |
| 18 | 18 | } |
| 19 | 19 | |
@@ -13,7 +13,8 @@ |
||
| 13 | 13 | $content = \file_get_contents($filename); |
| 14 | 14 | $data = \json_decode($content, true); |
| 15 | 15 | |
| 16 | - if (\is_null($data)) { |
|
| 16 | + if (\is_null($data)) |
|
| 17 | + { |
|
| 17 | 18 | throw new LoaderException(\json_last_error_msg(), \json_last_error()); |
| 18 | 19 | } |
| 19 | 20 | |
@@ -15,15 +15,15 @@ |
||
| 15 | 15 | { |
| 16 | 16 | public function __construct( |
| 17 | 17 | private readonly ContainerInterface $container |
| 18 | - ) { |
|
| 18 | + ){ |
|
| 19 | 19 | } |
| 20 | 20 | |
| 21 | 21 | public function loadFile(string $section, string $filename): array |
| 22 | 22 | { |
| 23 | - try { |
|
| 23 | + try{ |
|
| 24 | 24 | return ContainerScope::runScope($this->container, static fn () => require $filename); |
| 25 | - } catch (\Throwable $e) { |
|
| 26 | - throw new LoaderException($e->getMessage(), (int) $e->getCode(), $e); |
|
| 25 | + }catch (\Throwable $e){ |
|
| 26 | + throw new LoaderException($e->getMessage(), (int)$e->getCode(), $e); |
|
| 27 | 27 | } |
| 28 | 28 | } |
| 29 | 29 | } |
@@ -20,9 +20,12 @@ |
||
| 20 | 20 | |
| 21 | 21 | public function loadFile(string $section, string $filename): array |
| 22 | 22 | { |
| 23 | - try { |
|
| 23 | + try |
|
| 24 | + { |
|
| 24 | 25 | return ContainerScope::runScope($this->container, static fn () => require $filename); |
| 25 | - } catch (\Throwable $e) { |
|
| 26 | + } |
|
| 27 | + catch (\Throwable $e) |
|
| 28 | + { |
|
| 26 | 29 | throw new LoaderException($e->getMessage(), (int) $e->getCode(), $e); |
| 27 | 30 | } |
| 28 | 31 | } |
@@ -18,26 +18,26 @@ |
||
| 18 | 18 | string $position, |
| 19 | 19 | private readonly ?string $key, |
| 20 | 20 | private mixed $value = null |
| 21 | - ) { |
|
| 21 | + ){ |
|
| 22 | 22 | $this->position = $position === '.' ? '' : $position; |
| 23 | 23 | } |
| 24 | 24 | |
| 25 | 25 | public function patch(array $config): array |
| 26 | 26 | { |
| 27 | - try { |
|
| 27 | + try{ |
|
| 28 | 28 | $target = &$this->dotGet($config, $this->position); |
| 29 | 29 | |
| 30 | - if ($this->key !== null) { |
|
| 30 | + if ($this->key !== null){ |
|
| 31 | 31 | unset($target[$this->key]); |
| 32 | - } else { |
|
| 33 | - foreach ($target as $key => $value) { |
|
| 34 | - if ($value === $this->value) { |
|
| 32 | + }else{ |
|
| 33 | + foreach ($target as $key => $value){ |
|
| 34 | + if ($value === $this->value){ |
|
| 35 | 35 | unset($target[$key]); |
| 36 | 36 | break; |
| 37 | 37 | } |
| 38 | 38 | } |
| 39 | 39 | } |
| 40 | - } catch (DotNotFoundException) { |
|
| 40 | + }catch (DotNotFoundException){ |
|
| 41 | 41 | // doing nothing when section not found |
| 42 | 42 | } |
| 43 | 43 | |
@@ -24,20 +24,28 @@ |
||
| 24 | 24 | |
| 25 | 25 | public function patch(array $config): array |
| 26 | 26 | { |
| 27 | - try { |
|
| 27 | + try |
|
| 28 | + { |
|
| 28 | 29 | $target = &$this->dotGet($config, $this->position); |
| 29 | 30 | |
| 30 | - if ($this->key !== null) { |
|
| 31 | + if ($this->key !== null) |
|
| 32 | + { |
|
| 31 | 33 | unset($target[$this->key]); |
| 32 | - } else { |
|
| 33 | - foreach ($target as $key => $value) { |
|
| 34 | - if ($value === $this->value) { |
|
| 34 | + } |
|
| 35 | + else |
|
| 36 | + { |
|
| 37 | + foreach ($target as $key => $value) |
|
| 38 | + { |
|
| 39 | + if ($value === $this->value) |
|
| 40 | + { |
|
| 35 | 41 | unset($target[$key]); |
| 36 | 42 | break; |
| 37 | 43 | } |
| 38 | 44 | } |
| 39 | 45 | } |
| 40 | - } catch (DotNotFoundException) { |
|
| 46 | + } |
|
| 47 | + catch (DotNotFoundException) |
|
| 48 | + { |
|
| 41 | 49 | // doing nothing when section not found |
| 42 | 50 | } |
| 43 | 51 | |
@@ -14,14 +14,14 @@ |
||
| 14 | 14 | private function &dotGet(array &$data, string $name): mixed |
| 15 | 15 | { |
| 16 | 16 | //Generating path relative to a given name and prefix |
| 17 | - $path = (!empty($this->prefix) ? $this->prefix . '.' : '') . $name; |
|
| 18 | - if (empty($path)) { |
|
| 17 | + $path = (!empty($this->prefix) ? $this->prefix.'.' : '').$name; |
|
| 18 | + if (empty($path)){ |
|
| 19 | 19 | return $data; |
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | $path = \explode('.', \rtrim($path, '.')); |
| 23 | - foreach ($path as $step) { |
|
| 24 | - if (!\is_array($data) || !\array_key_exists($step, $data)) { |
|
| 23 | + foreach ($path as $step){ |
|
| 24 | + if (!\is_array($data) || !\array_key_exists($step, $data)){ |
|
| 25 | 25 | throw new DotNotFoundException(\sprintf("Unable to find config element '%s'.", $name)); |
| 26 | 26 | } |
| 27 | 27 | $data = &$data[$step]; |
@@ -15,13 +15,16 @@ |
||
| 15 | 15 | { |
| 16 | 16 | //Generating path relative to a given name and prefix |
| 17 | 17 | $path = (!empty($this->prefix) ? $this->prefix . '.' : '') . $name; |
| 18 | - if (empty($path)) { |
|
| 18 | + if (empty($path)) |
|
| 19 | + { |
|
| 19 | 20 | return $data; |
| 20 | 21 | } |
| 21 | 22 | |
| 22 | 23 | $path = \explode('.', \rtrim($path, '.')); |
| 23 | - foreach ($path as $step) { |
|
| 24 | - if (!\is_array($data) || !\array_key_exists($step, $data)) { |
|
| 24 | + foreach ($path as $step) |
|
| 25 | + { |
|
| 26 | + if (!\is_array($data) || !\array_key_exists($step, $data)) |
|
| 27 | + { |
|
| 25 | 28 | throw new DotNotFoundException(\sprintf("Unable to find config element '%s'.", $name)); |
| 26 | 29 | } |
| 27 | 30 | $data = &$data[$step]; |
@@ -19,21 +19,21 @@ |
||
| 19 | 19 | string $position, |
| 20 | 20 | private ?string $key, |
| 21 | 21 | private mixed $value |
| 22 | - ) { |
|
| 22 | + ){ |
|
| 23 | 23 | $this->position = $position === '.' ? '' : $position; |
| 24 | 24 | } |
| 25 | 25 | |
| 26 | 26 | public function patch(array $config): array |
| 27 | 27 | { |
| 28 | - try { |
|
| 28 | + try{ |
|
| 29 | 29 | $target = &$this->dotGet($config, $this->position); |
| 30 | 30 | |
| 31 | - if ($this->key !== null) { |
|
| 31 | + if ($this->key !== null){ |
|
| 32 | 32 | $target[$this->key] = $this->value; |
| 33 | - } else { |
|
| 33 | + }else{ |
|
| 34 | 34 | $target[] = $this->value; |
| 35 | 35 | } |
| 36 | - } catch (DotNotFoundException $e) { |
|
| 36 | + }catch (DotNotFoundException $e){ |
|
| 37 | 37 | throw new PatchException($e->getMessage(), $e->getCode(), $e); |
| 38 | 38 | } |
| 39 | 39 | |
@@ -25,15 +25,21 @@ |
||
| 25 | 25 | |
| 26 | 26 | public function patch(array $config): array |
| 27 | 27 | { |
| 28 | - try { |
|
| 28 | + try |
|
| 29 | + { |
|
| 29 | 30 | $target = &$this->dotGet($config, $this->position); |
| 30 | 31 | |
| 31 | - if ($this->key !== null) { |
|
| 32 | + if ($this->key !== null) |
|
| 33 | + { |
|
| 32 | 34 | $target[$this->key] = $this->value; |
| 33 | - } else { |
|
| 35 | + } |
|
| 36 | + else |
|
| 37 | + { |
|
| 34 | 38 | $target[] = $this->value; |
| 35 | 39 | } |
| 36 | - } catch (DotNotFoundException $e) { |
|
| 40 | + } |
|
| 41 | + catch (DotNotFoundException $e) |
|
| 42 | + { |
|
| 37 | 43 | throw new PatchException($e->getMessage(), $e->getCode(), $e); |
| 38 | 44 | } |
| 39 | 45 | |
@@ -2,7 +2,7 @@ |
||
| 2 | 2 | |
| 3 | 3 | use Spiral\Router\Loader\Configurator\RoutingConfigurator; |
| 4 | 4 | |
| 5 | -return function (RoutingConfigurator $routes) { |
|
| 5 | +return function (RoutingConfigurator $routes){ |
|
| 6 | 6 | $routes->add('index', '/')->callable(static fn () => null); |
| 7 | 7 | $routes->add('posts', '/posts')->callable(static fn () => null); |
| 8 | 8 | $routes->add('post', '/post/<id>')->callable(static fn () => null); |
@@ -2,7 +2,8 @@ |
||
| 2 | 2 | |
| 3 | 3 | use Spiral\Router\Loader\Configurator\RoutingConfigurator; |
| 4 | 4 | |
| 5 | -return function (RoutingConfigurator $routes) { |
|
| 5 | +return function (RoutingConfigurator $routes) |
|
| 6 | +{ |
|
| 6 | 7 | $routes->add('index', '/')->callable(static fn () => null); |
| 7 | 8 | $routes->add('posts', '/posts')->callable(static fn () => null); |
| 8 | 9 | $routes->add('post', '/post/<id>')->callable(static fn () => null); |