Passed
Push — master ( 904fca...2ba06e )
by butschster
07:38
created
src/Router/src/UriHandler.php 2 patches
Braces   +46 added lines, -22 removed lines patch added patch discarded remove patch
@@ -95,7 +95,8 @@  discard block
 block discarded – undo
95 95
 
96 96
     public function withBasePath(string $basePath): self
97 97
     {
98
-        if (!\str_ends_with($basePath, '/')) {
98
+        if (!\str_ends_with($basePath, '/'))
99
+        {
99 100
             $basePath .= '/';
100 101
         }
101 102
 
@@ -132,12 +133,14 @@  discard block
 block discarded – undo
132 133
      */
133 134
     public function match(UriInterface $uri, array $defaults): ?array
134 135
     {
135
-        if (!$this->isCompiled()) {
136
+        if (!$this->isCompiled())
137
+        {
136 138
             $this->compile();
137 139
         }
138 140
 
139 141
         $matches = [];
140
-        if (!\preg_match($this->compiled, $this->fetchTarget($uri), $matches)) {
142
+        if (!\preg_match($this->compiled, $this->fetchTarget($uri), $matches))
143
+        {
141 144
             return null;
142 145
         }
143 146
 
@@ -154,7 +157,8 @@  discard block
 block discarded – undo
154 157
      */
155 158
     public function uri(iterable $parameters = [], array $defaults = []): UriInterface
156 159
     {
157
-        if (!$this->isCompiled()) {
160
+        if (!$this->isCompiled())
161
+        {
158 162
             $this->compile();
159 163
         }
160 164
 
@@ -164,8 +168,10 @@  discard block
 block discarded – undo
164 168
             $this->fetchOptions($parameters, $query)
165 169
         );
166 170
 
167
-        foreach ($this->constrains as $key => $_) {
168
-            if (empty($parameters[$key])) {
171
+        foreach ($this->constrains as $key => $_)
172
+        {
173
+            if (empty($parameters[$key]))
174
+            {
169 175
                 throw new UriHandlerException(\sprintf('Unable to generate Uri, parameter `%s` is missing', $key));
170 176
             }
171 177
         }
@@ -189,18 +195,23 @@  discard block
 block discarded – undo
189 195
         $allowed = \array_keys($this->options);
190 196
 
191 197
         $result = [];
192
-        foreach ($parameters as $key => $parameter) {
193
-            if (\is_int($key) && isset($allowed[$key])) {
198
+        foreach ($parameters as $key => $parameter)
199
+        {
200
+            if (\is_int($key) && isset($allowed[$key]))
201
+            {
194 202
                 // this segment fetched keys from given parameters either by name or by position
195 203
                 $key = $allowed[$key];
196
-            } elseif (!\array_key_exists($key, $this->options) && \is_array($parameters)) {
204
+            }
205
+            elseif (!\array_key_exists($key, $this->options) && \is_array($parameters))
206
+            {
197 207
                 // all additional parameters given in array form can be glued to query string
198 208
                 $query[$key] = $parameter;
199 209
                 continue;
200 210
             }
201 211
 
202 212
             //String must be normalized here
203
-            if (\is_string($parameter) && !\preg_match('/^[a-z\-_0-9]+$/i', $parameter)) {
213
+            if (\is_string($parameter) && !\preg_match('/^[a-z\-_0-9]+$/i', $parameter))
214
+            {
204 215
                 $result[$key] = $this->slugify->slugify($parameter);
205 216
                 continue;
206 217
             }
@@ -218,15 +229,20 @@  discard block
 block discarded – undo
218 229
     {
219 230
         $path = $uri->getPath();
220 231
 
221
-        if (empty($path) || $path[0] !== '/') {
232
+        if (empty($path) || $path[0] !== '/')
233
+        {
222 234
             $path = '/' . $path;
223 235
         }
224 236
 
225
-        if ($this->matchHost) {
237
+        if ($this->matchHost)
238
+        {
226 239
             $uriString = $uri->getHost() . $path;
227
-        } else {
240
+        }
241
+        else
242
+        {
228 243
             $uriString = \substr($path, \strlen($this->basePath));
229
-            if ($uriString === false) {
244
+            if ($uriString === false)
245
+            {
230 246
                 $uriString = '';
231 247
             }
232 248
         }
@@ -239,7 +255,8 @@  discard block
 block discarded – undo
239 255
      */
240 256
     private function compile(): void
241 257
     {
242
-        if ($this->pattern === null) {
258
+        if ($this->pattern === null)
259
+        {
243 260
             throw new UriHandlerException('Unable to compile UriHandler, pattern is not set');
244 261
         }
245 262
 
@@ -248,14 +265,17 @@  discard block
 block discarded – undo
248 265
         $pattern = \rtrim(\ltrim($this->getPrefix() . '/' . $this->pattern, ':/'), '/');
249 266
 
250 267
         // correct [/ first occurrence]
251
-        if (\str_starts_with($pattern, '[/')) {
268
+        if (\str_starts_with($pattern, '[/'))
269
+        {
252 270
             $pattern = '[' . \substr($pattern, 2);
253 271
         }
254 272
 
255
-        if (\preg_match_all('/<(\w+):?(.*?)?>/', $pattern, $matches)) {
273
+        if (\preg_match_all('/<(\w+):?(.*?)?>/', $pattern, $matches))
274
+        {
256 275
             $variables = \array_combine($matches[1], $matches[2]);
257 276
 
258
-            foreach ($variables as $key => $segment) {
277
+            foreach ($variables as $key => $segment)
278
+            {
259 279
                 $segment = $this->prepareSegment($key, $segment);
260 280
                 $replaces[\sprintf('<%s>', $key)] = \sprintf('(?P<%s>%s)', $key, $segment);
261 281
                 $options[] = $key;
@@ -265,13 +285,16 @@  discard block
 block discarded – undo
265 285
         $template = \preg_replace('/<(\w+):?.*?>/', '<\1>', $pattern);
266 286
         $options = \array_fill_keys($options, null);
267 287
 
268
-        foreach ($this->constrains as $key => $value) {
269
-            if ($value instanceof Autofill) {
288
+        foreach ($this->constrains as $key => $value)
289
+        {
290
+            if ($value instanceof Autofill)
291
+            {
270 292
                 // only forces value replacement, not required to be presented as parameter
271 293
                 continue;
272 294
             }
273 295
 
274
-            if (!\array_key_exists($key, $options) && !isset($this->defaults[$key])) {
296
+            if (!\array_key_exists($key, $options) && !isset($this->defaults[$key]))
297
+            {
275 298
                 throw new ConstrainException(
276 299
                     \sprintf(
277 300
                         'Route `%s` does not define routing parameter `<%s>`.',
@@ -293,7 +316,8 @@  discard block
 block discarded – undo
293 316
     private function interpolate(string $string, array $values): string
294 317
     {
295 318
         $replaces = [];
296
-        foreach ($values as $key => $value) {
319
+        foreach ($values as $key => $value)
320
+        {
297 321
             $replaces[\sprintf('<%s>', $key)] = match (true) {
298 322
                 $value instanceof \Stringable || \is_scalar($value) => (string)$value,
299 323
                 default => '',
Please login to merge, or discard this patch.
Spacing   +29 added lines, -29 removed lines patch added patch discarded remove patch
@@ -48,7 +48,7 @@  discard block
 block discarded – undo
48 48
         private readonly UriFactoryInterface $uriFactory,
49 49
         SlugifyInterface $slugify = null,
50 50
         private readonly ?RoutePatternRegistryInterface $patternRegistry = new DefaultPatternRegistry(),
51
-    ) {
51
+    ){
52 52
         $this->slugify = $slugify ?? new Slugify();
53 53
     }
54 54
 
@@ -88,7 +88,7 @@  discard block
 block discarded – undo
88 88
 
89 89
     public function withBasePath(string $basePath): self
90 90
     {
91
-        if (!\str_ends_with($basePath, '/')) {
91
+        if (!\str_ends_with($basePath, '/')){
92 92
             $basePath .= '/';
93 93
         }
94 94
 
@@ -125,12 +125,12 @@  discard block
 block discarded – undo
125 125
      */
126 126
     public function match(UriInterface $uri, array $defaults): ?array
127 127
     {
128
-        if (!$this->isCompiled()) {
128
+        if (!$this->isCompiled()){
129 129
             $this->compile();
130 130
         }
131 131
 
132 132
         $matches = [];
133
-        if (!\preg_match($this->compiled, $this->fetchTarget($uri), $matches)) {
133
+        if (!\preg_match($this->compiled, $this->fetchTarget($uri), $matches)){
134 134
             return null;
135 135
         }
136 136
 
@@ -147,7 +147,7 @@  discard block
 block discarded – undo
147 147
      */
148 148
     public function uri(iterable $parameters = [], array $defaults = []): UriInterface
149 149
     {
150
-        if (!$this->isCompiled()) {
150
+        if (!$this->isCompiled()){
151 151
             $this->compile();
152 152
         }
153 153
 
@@ -157,8 +157,8 @@  discard block
 block discarded – undo
157 157
             $this->fetchOptions($parameters, $query)
158 158
         );
159 159
 
160
-        foreach ($this->constrains as $key => $_) {
161
-            if (empty($parameters[$key])) {
160
+        foreach ($this->constrains as $key => $_){
161
+            if (empty($parameters[$key])){
162 162
                 throw new UriHandlerException(\sprintf('Unable to generate Uri, parameter `%s` is missing', $key));
163 163
             }
164 164
         }
@@ -167,7 +167,7 @@  discard block
 block discarded – undo
167 167
         $path = $this->interpolate($this->template, $parameters);
168 168
 
169 169
         //Uri with added base path and prefix
170
-        $uri = $this->uriFactory->createUri(($this->matchHost ? '' : $this->basePath) . \trim($path, '/'));
170
+        $uri = $this->uriFactory->createUri(($this->matchHost ? '' : $this->basePath).\trim($path, '/'));
171 171
 
172 172
         return empty($query) ? $uri : $uri->withQuery(\http_build_query($query));
173 173
     }
@@ -182,18 +182,18 @@  discard block
 block discarded – undo
182 182
         $allowed = \array_keys($this->options);
183 183
 
184 184
         $result = [];
185
-        foreach ($parameters as $key => $parameter) {
186
-            if (\is_int($key) && isset($allowed[$key])) {
185
+        foreach ($parameters as $key => $parameter){
186
+            if (\is_int($key) && isset($allowed[$key])){
187 187
                 // this segment fetched keys from given parameters either by name or by position
188 188
                 $key = $allowed[$key];
189
-            } elseif (!\array_key_exists($key, $this->options) && \is_array($parameters)) {
189
+            } elseif (!\array_key_exists($key, $this->options) && \is_array($parameters)){
190 190
                 // all additional parameters given in array form can be glued to query string
191 191
                 $query[$key] = $parameter;
192 192
                 continue;
193 193
             }
194 194
 
195 195
             //String must be normalized here
196
-            if (\is_string($parameter) && !\preg_match('/^[a-z\-_0-9]+$/i', $parameter)) {
196
+            if (\is_string($parameter) && !\preg_match('/^[a-z\-_0-9]+$/i', $parameter)){
197 197
                 $result[$key] = $this->slugify->slugify($parameter);
198 198
                 continue;
199 199
             }
@@ -211,15 +211,15 @@  discard block
 block discarded – undo
211 211
     {
212 212
         $path = $uri->getPath();
213 213
 
214
-        if (empty($path) || $path[0] !== '/') {
215
-            $path = '/' . $path;
214
+        if (empty($path) || $path[0] !== '/'){
215
+            $path = '/'.$path;
216 216
         }
217 217
 
218
-        if ($this->matchHost) {
219
-            $uriString = $uri->getHost() . $path;
220
-        } else {
218
+        if ($this->matchHost){
219
+            $uriString = $uri->getHost().$path;
220
+        }else{
221 221
             $uriString = \substr($path, \strlen($this->basePath));
222
-            if ($uriString === false) {
222
+            if ($uriString === false){
223 223
                 $uriString = '';
224 224
             }
225 225
         }
@@ -232,23 +232,23 @@  discard block
 block discarded – undo
232 232
      */
233 233
     private function compile(): void
234 234
     {
235
-        if ($this->pattern === null) {
235
+        if ($this->pattern === null){
236 236
             throw new UriHandlerException('Unable to compile UriHandler, pattern is not set');
237 237
         }
238 238
 
239 239
         $options = [];
240 240
         $replaces = [];
241
-        $pattern = \rtrim(\ltrim($this->getPrefix() . '/' . $this->pattern, ':/'), '/');
241
+        $pattern = \rtrim(\ltrim($this->getPrefix().'/'.$this->pattern, ':/'), '/');
242 242
 
243 243
         // correct [/ first occurrence]
244
-        if (\str_starts_with($pattern, '[/')) {
245
-            $pattern = '[' . \substr($pattern, 2);
244
+        if (\str_starts_with($pattern, '[/')){
245
+            $pattern = '['.\substr($pattern, 2);
246 246
         }
247 247
 
248
-        if (\preg_match_all('/<(\w+):?(.*?)?>/', $pattern, $matches)) {
248
+        if (\preg_match_all('/<(\w+):?(.*?)?>/', $pattern, $matches)){
249 249
             $variables = \array_combine($matches[1], $matches[2]);
250 250
 
251
-            foreach ($variables as $key => $segment) {
251
+            foreach ($variables as $key => $segment){
252 252
                 $segment = $this->prepareSegment($key, $segment);
253 253
                 $replaces[\sprintf('<%s>', $key)] = \sprintf('(?P<%s>%s)', $key, $segment);
254 254
                 $options[] = $key;
@@ -258,13 +258,13 @@  discard block
 block discarded – undo
258 258
         $template = \preg_replace('/<(\w+):?.*?>/', '<\1>', $pattern);
259 259
         $options = \array_fill_keys($options, null);
260 260
 
261
-        foreach ($this->constrains as $key => $value) {
262
-            if ($value instanceof Autofill) {
261
+        foreach ($this->constrains as $key => $value){
262
+            if ($value instanceof Autofill){
263 263
                 // only forces value replacement, not required to be presented as parameter
264 264
                 continue;
265 265
             }
266 266
 
267
-            if (!\array_key_exists($key, $options) && !isset($this->defaults[$key])) {
267
+            if (!\array_key_exists($key, $options) && !isset($this->defaults[$key])){
268 268
                 throw new ConstrainException(
269 269
                     \sprintf(
270 270
                         'Route `%s` does not define routing parameter `<%s>`.',
@@ -275,7 +275,7 @@  discard block
 block discarded – undo
275 275
             }
276 276
         }
277 277
 
278
-        $this->compiled = '/^' . \strtr($template, $replaces + self::PATTERN_REPLACES) . '$/iu';
278
+        $this->compiled = '/^'.\strtr($template, $replaces + self::PATTERN_REPLACES).'$/iu';
279 279
         $this->template = \stripslashes(\str_replace('?', '', $template));
280 280
         $this->options = $options;
281 281
     }
@@ -286,7 +286,7 @@  discard block
 block discarded – undo
286 286
     private function interpolate(string $string, array $values): string
287 287
     {
288 288
         $replaces = [];
289
-        foreach ($values as $key => $value) {
289
+        foreach ($values as $key => $value){
290 290
             $replaces[\sprintf('<%s>', $key)] = match (true) {
291 291
                 $value instanceof \Stringable || \is_scalar($value) => (string)$value,
292 292
                 default => '',
Please login to merge, or discard this patch.
src/Router/tests/Stub/InArrayPattern.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -6,7 +6,7 @@
 block discarded – undo
6 6
 {
7 7
     public function __construct(
8 8
         private readonly array $values
9
-    ) {
9
+    ){
10 10
     }
11 11
 
12 12
     public function __toString()
Please login to merge, or discard this patch.
src/Router/src/Registry/RoutePatternRegistryInterface.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -8,7 +8,7 @@
 block discarded – undo
8 8
      * @param non-empty-string $name
9 9
      * @param non-empty-string|\Stringable $pattern
10 10
      */
11
-    public function register(string $name, string|\Stringable $pattern): void;
11
+    public function register(string $name, string | \Stringable $pattern): void;
12 12
 
13 13
     /**
14 14
      * @return array<non-empty-string, non-empty-string>
Please login to merge, or discard this patch.
src/Router/src/Registry/DefaultPatternRegistry.php 1 patch
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -21,7 +21,7 @@
 block discarded – undo
21 21
      * @param non-empty-string $name
22 22
      * @param non-empty-string|\Stringable $pattern
23 23
      */
24
-    public function register(string $name, string|\Stringable $pattern): void
24
+    public function register(string $name, string | \Stringable $pattern): void
25 25
     {
26 26
         $this->patterns[$name] = (string)$pattern;
27 27
     }
Please login to merge, or discard this patch.