Completed
Push — master ( 1fa54f...929aa1 )
by Ivan
12:23
created
src/Schema.php 1 patch
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -31,7 +31,7 @@  discard block
 block discarded – undo
31 31
     public function getTable(string $table): Table
32 32
     {
33 33
         if (!$this->hasTable($table)) {
34
-            throw new DBException('Invalid table name: ' . $table);
34
+            throw new DBException('Invalid table name: '.$table);
35 35
         }
36 36
         return $this->tables[$table] ??
37 37
             $this->tables[strtoupper($table)] ??
@@ -64,13 +64,13 @@  discard block
 block discarded – undo
64 64
     
65 65
     public function toArray(): array
66 66
     {
67
-        return array_map(function ($table) {
67
+        return array_map(function($table) {
68 68
             return [
69 69
                 'name' => $table->getName(),
70 70
                 'schema' => $table->getSchema(),
71 71
                 'pkey' => $table->getPrimaryKey(),
72 72
                 'comment' => $table->getComment(),
73
-                'columns' => array_map(function ($column) {
73
+                'columns' => array_map(function($column) {
74 74
                     return [
75 75
                         'name' => $column->getName(),
76 76
                         'type' => $column->getType(),
@@ -81,9 +81,9 @@  discard block
 block discarded – undo
81 81
                         'nullable' => $column->isNullable()
82 82
                     ];
83 83
                 }, $table->getFullColumns()),
84
-                'relations' => array_map(function ($rel) {
84
+                'relations' => array_map(function($rel) {
85 85
                     $relation = clone $rel;
86
-                    $relation = (array)$relation;
86
+                    $relation = (array) $relation;
87 87
                     $relation['table'] = $rel->table->getName();
88 88
                     if ($rel->pivot) {
89 89
                         $relation['pivot'] = $rel->pivot->getName();
Please login to merge, or discard this patch.
src/schema/TableQuery.php 1 patch
Spacing   +263 added lines, -263 removed lines patch added patch discarded remove patch
@@ -22,7 +22,7 @@  discard block
 block discarded – undo
22 22
     protected array $order = [];
23 23
     protected array $group = [];
24 24
     protected array $having = [];
25
-    protected array $li_of = [0,0,0];
25
+    protected array $li_of = [0, 0, 0];
26 26
     protected array $fields = [];
27 27
     protected array $withr = [];
28 28
     protected array $joins = [];
@@ -36,11 +36,11 @@  discard block
 block discarded – undo
36 36
      * @param  Table|string   $table           the name or definition of the main table in the query
37 37
      * @param  bool           $findRelations   should the query builder try to find missing joins
38 38
      */
39
-    public function __construct(DBInterface $db, Table|string $table, bool $findRelations = false)
39
+    public function __construct(DBInterface $db, Table | string $table, bool $findRelations = false)
40 40
     {
41 41
         $this->db = $db;
42 42
         $this->findRelations = $findRelations;
43
-        $this->definition = $table instanceof Table ? $table : $this->db->definition((string)$table);
43
+        $this->definition = $table instanceof Table ? $table : $this->db->definition((string) $table);
44 44
         $primary = $this->definition->getPrimaryKey();
45 45
         $columns = $this->definition->getColumns();
46 46
         $this->pkey = count($primary) ? $primary : $columns;
@@ -63,27 +63,27 @@  discard block
 block discarded – undo
63 63
     {
64 64
         $column = explode('.', $column);
65 65
         if (count($column) === 1) {
66
-            $column = [ $this->definition->getFullName(), $column[0] ];
66
+            $column = [$this->definition->getFullName(), $column[0]];
67 67
             $col = $this->definition->getColumn($column[1]);
68 68
             if (!$col) {
69
-                throw new DBException('Invalid column name in main table: ' . $column[1]);
69
+                throw new DBException('Invalid column name in main table: '.$column[1]);
70 70
             }
71 71
         } elseif (count($column) === 2) {
72 72
             if ($column[0] === $this->definition->getName()) {
73 73
                 $col = $this->definition->getColumn($column[1]);
74 74
                 if (!$col) {
75
-                    throw new DBException('Invalid column name in main table: ' . $column[1]);
75
+                    throw new DBException('Invalid column name in main table: '.$column[1]);
76 76
                 }
77 77
             } else {
78 78
                 if ($this->definition->hasRelation($column[0])) {
79 79
                     $col = $this->definition->getRelation($column[0])?->table?->getColumn($column[1]);
80 80
                     if (!$col) {
81
-                        throw new DBException('Invalid column name in related table: ' . $column[1]);
81
+                        throw new DBException('Invalid column name in related table: '.$column[1]);
82 82
                     }
83 83
                 } elseif (isset($this->joins[$column[0]])) {
84 84
                     $col = $this->joins[$column[0]]->table->getColumn($column[1]);
85 85
                     if (!$col) {
86
-                        throw new DBException('Invalid column name in related table: ' . $column[1]);
86
+                        throw new DBException('Invalid column name in related table: '.$column[1]);
87 87
                     }
88 88
                 } else {
89 89
                     $col = null;
@@ -102,7 +102,7 @@  discard block
 block discarded – undo
102 102
                             $path = $this->db->findRelation($this->definition->getName(), $column[0]);
103 103
                         }
104 104
                         if (!count($path)) {
105
-                            throw new DBException('Invalid foreign table / column name: ' . implode(',', $column));
105
+                            throw new DBException('Invalid foreign table / column name: '.implode(',', $column));
106 106
                         }
107 107
                         unset($path[0]);
108 108
                         $this->with(implode('.', $path), false);
@@ -115,26 +115,26 @@  discard block
 block discarded – undo
115 115
             if ($this->definition->hasRelation(implode('.', $column))) {
116 116
                 $this->with(implode('.', $column), false);
117 117
                 $col = $this->definition->getRelation(implode('.', $column))?->table?->getColumn($name);
118
-                $column = [ implode('.', $column), $name ];
118
+                $column = [implode('.', $column), $name];
119 119
             } else {
120 120
                 $this->with(implode('.', $column), false);
121 121
                 $table = $this->definition;
122 122
                 $table = array_reduce(
123 123
                     $column,
124
-                    function ($carry, $item) use (&$table) {
124
+                    function($carry, $item) use (&$table) {
125 125
                         $table = $table->getRelation($item)->table;
126 126
                         return $table;
127 127
                     }
128 128
                 );
129 129
                 $col = $table->getColumn($name);
130
-                $column = [ implode(static::SEP, $column), $name ];
130
+                $column = [implode(static::SEP, $column), $name];
131 131
             }
132 132
         }
133
-        return [ 'name' => implode('.', $column), 'data' => $col ];
133
+        return ['name' => implode('.', $column), 'data' => $col];
134 134
     }
135 135
     protected function normalizeValue(TableColumn $col, mixed $value): mixed
136 136
     {
137
-        $strict = (int)$this->db->driverOption('strict', 0) > 0;
137
+        $strict = (int) $this->db->driverOption('strict', 0) > 0;
138 138
         if ($value === null && $col->isNullable()) {
139 139
             return null;
140 140
         }
@@ -144,7 +144,7 @@  discard block
 block discarded – undo
144 144
                     $temp = strtotime($value);
145 145
                     if (!$temp) {
146 146
                         if ($strict) {
147
-                            throw new DBException('Invalid value for date column: ' . $col->getName());
147
+                            throw new DBException('Invalid value for date column: '.$col->getName());
148 148
                         }
149 149
                         return null;
150 150
                     }
@@ -157,7 +157,7 @@  discard block
 block discarded – undo
157 157
                     return $value->format('Y-m-d');
158 158
                 }
159 159
                 if ($strict) {
160
-                    throw new DBException('Invalid value (unknown data type) for date column: ' . $col->getName());
160
+                    throw new DBException('Invalid value (unknown data type) for date column: '.$col->getName());
161 161
                 }
162 162
                 return $value;
163 163
             case 'datetime':
@@ -165,7 +165,7 @@  discard block
 block discarded – undo
165 165
                     $temp = strtotime($value);
166 166
                     if (!$temp) {
167 167
                         if ($strict) {
168
-                            throw new DBException('Invalid value for datetime column: ' . $col->getName());
168
+                            throw new DBException('Invalid value for datetime column: '.$col->getName());
169 169
                         }
170 170
                         return null;
171 171
                     }
@@ -178,7 +178,7 @@  discard block
 block discarded – undo
178 178
                     return $value->format('Y-m-d H:i:s');
179 179
                 }
180 180
                 if ($strict) {
181
-                    throw new DBException('Invalid value (unknown data type) for datetime column ' . $col->getName());
181
+                    throw new DBException('Invalid value (unknown data type) for datetime column '.$col->getName());
182 182
                 }
183 183
                 return $value;
184 184
             case 'enum':
@@ -186,7 +186,7 @@  discard block
 block discarded – undo
186 186
                 if (is_int($value)) {
187 187
                     if (!isset($values[$value])) {
188 188
                         if ($strict) {
189
-                            throw new DBException('Invalid value (using integer) for enum: ' . $col->getName());
189
+                            throw new DBException('Invalid value (using integer) for enum: '.$col->getName());
190 190
                         }
191 191
                         return $value;
192 192
                     }
@@ -194,23 +194,23 @@  discard block
 block discarded – undo
194 194
                 }
195 195
                 if (!in_array($value, $col->getValues())) {
196 196
                     if ($strict) {
197
-                        throw new DBException('Invalid value for enum: ' . $col->getName());
197
+                        throw new DBException('Invalid value for enum: '.$col->getName());
198 198
                     }
199 199
                     return 0;
200 200
                 }
201 201
                 return $value;
202 202
             case 'int':
203
-                $temp = preg_replace('([^+\-0-9]+)', '', (string)$value);
204
-                return is_string($temp) ? (int)$temp : 0;
203
+                $temp = preg_replace('([^+\-0-9]+)', '', (string) $value);
204
+                return is_string($temp) ? (int) $temp : 0;
205 205
             case 'float':
206
-                $temp = preg_replace('([^+\-0-9.]+)', '', str_replace(',', '.', (string)$value));
207
-                return is_string($temp) ? (float)$temp : 0;
206
+                $temp = preg_replace('([^+\-0-9.]+)', '', str_replace(',', '.', (string) $value));
207
+                return is_string($temp) ? (float) $temp : 0;
208 208
             case 'text':
209 209
                 // check using strlen first, in order to avoid hitting mb_ functions which might be polyfilled
210 210
                 // because the polyfill is quite slow
211 211
                 if ($col->hasLength() && strlen($value) > $col->getLength() && mb_strlen($value) > $col->getLength()) {
212 212
                     if ($strict) {
213
-                        throw new DBException('Invalid value for text column: ' . $col->getName());
213
+                        throw new DBException('Invalid value for text column: '.$col->getName());
214 214
                     }
215 215
                     return mb_substr($value, 0, $col->getLength());
216 216
                 }
@@ -238,11 +238,11 @@  discard block
 block discarded – undo
238 238
                     $sqls[] = $temp[0];
239 239
                     $pars = array_merge($pars, $temp[1]);
240 240
                     unset($value[$k]);
241
-                } elseif (in_array($k, ['like','ilike','contains','icontains','ends','iends'])) {
241
+                } elseif (in_array($k, ['like', 'ilike', 'contains', 'icontains', 'ends', 'iends'])) {
242 242
                     if ($column->getBasicType() !== 'text') {
243 243
                         switch ($this->db->driverName()) {
244 244
                             case 'oracle':
245
-                                $name = 'CAST(' . $name . ' AS NVARCHAR(500))';
245
+                                $name = 'CAST('.$name.' AS NVARCHAR(500))';
246 246
                                 break;
247 247
                             case 'postgre':
248 248
                                 $name = $name.'::text';
@@ -257,25 +257,25 @@  discard block
 block discarded – undo
257 257
                     $sql = [];
258 258
                     $par = [];
259 259
                     foreach ($values as $v) {
260
-                        $v = str_replace(['%', '_'], ['\\%','\\_'], $v) . '%';
260
+                        $v = str_replace(['%', '_'], ['\\%', '\\_'], $v).'%';
261 261
                         if ($mode === 'contains' || $mode === 'icontains') {
262
-                            $v = '%' . $v;
262
+                            $v = '%'.$v;
263 263
                         }
264 264
                         if ($mode === 'ends' || $mode === 'iends') {
265
-                            $v = '%' . rtrim($v, '%');
265
+                            $v = '%'.rtrim($v, '%');
266 266
                         }
267 267
                         if ($mode === 'icontains' || $mode === 'ilike' || $mode === 'iends') {
268 268
                             $v = mb_strtoupper($v);
269
-                            $name = 'UPPER(' . $name . ')';
269
+                            $name = 'UPPER('.$name.')';
270 270
                         }
271
-                        $sql[] = $negate ? $name . ' NOT LIKE ?' : $name . ' LIKE ?';
271
+                        $sql[] = $negate ? $name.' NOT LIKE ?' : $name.' LIKE ?';
272 272
                         $par[] = $v;
273 273
                     }
274 274
                     if ($negate) {
275
-                        $sqls[] = '(' . implode(' AND ', $sql) . ')';
275
+                        $sqls[] = '('.implode(' AND ', $sql).')';
276 276
                         $pars = array_merge($pars, $par);
277 277
                     } else {
278
-                        $sqls[] = '(' . implode(' OR ', $sql) . ')';
278
+                        $sqls[] = '('.implode(' OR ', $sql).')';
279 279
                         $pars = array_merge($pars, $par);
280 280
                     }
281 281
                     unset($value[$k]);
@@ -283,38 +283,38 @@  discard block
 block discarded – undo
283 283
             }
284 284
             if (!count($value)) {
285 285
                 return [
286
-                    '(' . implode(' AND ', $sqls) . ')',
286
+                    '('.implode(' AND ', $sqls).')',
287 287
                     $pars
288 288
                 ];
289 289
             }
290 290
         }
291 291
         if (is_null($value)) {
292
-            $sqls[] = $negate ? $name . ' IS NOT NULL' : $name . ' IS NULL';
292
+            $sqls[] = $negate ? $name.' IS NOT NULL' : $name.' IS NULL';
293 293
             return [
294
-                '(' . implode(' AND ', $sqls) . ')',
294
+                '('.implode(' AND ', $sqls).')',
295 295
                 $pars
296 296
             ];
297 297
         }
298 298
         if (!is_array($value)) {
299
-            $sqls[] = $negate ? $name . ' <> ?' : $name . ' = ?';
299
+            $sqls[] = $negate ? $name.' <> ?' : $name.' = ?';
300 300
             $pars[] = $this->normalizeValue($column, $value);
301 301
             return [
302
-                '(' . implode(' AND ', $sqls) . ')',
302
+                '('.implode(' AND ', $sqls).')',
303 303
                 $pars
304 304
             ];
305 305
         }
306 306
         if (isset($value['beg']) && strlen($value['beg']) && (!isset($value['end']) || !strlen($value['end']))) {
307
-            $value = [ 'gte' => $value['beg'] ];
307
+            $value = ['gte' => $value['beg']];
308 308
         }
309 309
         if (isset($value['end']) && strlen($value['end']) && (!isset($value['beg']) || !strlen($value['beg']))) {
310
-            $value = [ 'lte' => $value['end'] ];
310
+            $value = ['lte' => $value['end']];
311 311
         }
312 312
         if (isset($value['beg']) && isset($value['end'])) {
313 313
             $sqls[] = $negate ? $name.' NOT BETWEEN ? AND ?' : $name.' BETWEEN ? AND ?';
314 314
             $pars[] = $this->normalizeValue($column, $value['beg']);
315 315
             $pars[] = $this->normalizeValue($column, $value['end']);
316 316
             return [
317
-                '(' . implode(' AND ', $sqls) . ')',
317
+                '('.implode(' AND ', $sqls).')',
318 318
                 $pars
319 319
             ];
320 320
         }
@@ -322,51 +322,51 @@  discard block
 block discarded – undo
322 322
             $sql = [];
323 323
             $par = [];
324 324
             if (isset($value['gt'])) {
325
-                $sql[] = $name. ' ' . ($negate ? '<=' : '>') . ' ?';
325
+                $sql[] = $name.' '.($negate ? '<=' : '>').' ?';
326 326
                 $par[] = $this->normalizeValue($column, $value['gt']);
327 327
             }
328 328
             if (isset($value['gte'])) {
329
-                $sql[] = $name. ' ' . ($negate ? '<' : '>=') . ' ?';
329
+                $sql[] = $name.' '.($negate ? '<' : '>=').' ?';
330 330
                 $par[] = $this->normalizeValue($column, $value['gte']);
331 331
             }
332 332
             if (isset($value['lt'])) {
333
-                $sql[] = $name. ' ' . ($negate ? '>=' : '<') . ' ?';
333
+                $sql[] = $name.' '.($negate ? '>=' : '<').' ?';
334 334
                 $par[] = $this->normalizeValue($column, $value['lt']);
335 335
             }
336 336
             if (isset($value['lte'])) {
337
-                $sql[] = $name. ' ' . ($negate ? '>' : '<=') . ' ?';
337
+                $sql[] = $name.' '.($negate ? '>' : '<=').' ?';
338 338
                 $par[] = $this->normalizeValue($column, $value['lte']);
339 339
             }
340
-            $sqls[] = '(' . implode(' AND ', $sql) . ')';
340
+            $sqls[] = '('.implode(' AND ', $sql).')';
341 341
             $pars = array_merge($pars, $par);
342 342
             return [
343
-                '(' . implode(' AND ', $sqls) . ')',
343
+                '('.implode(' AND ', $sqls).')',
344 344
                 $pars
345 345
             ];
346 346
         }
347 347
 
348
-        $value = array_values(array_map(function ($v) use ($column) {
348
+        $value = array_values(array_map(function($v) use ($column) {
349 349
             return $this->normalizeValue($column, $v);
350 350
         }, $value));
351 351
         if ($this->db->driverName() === 'oracle') {
352 352
             $sql = [];
353 353
             $par = [];
354 354
             for ($i = 0; $i < count($value); $i += 500) {
355
-                $sql[] = $negate ? $name . ' NOT IN (??)' : $name . ' IN (??)';
355
+                $sql[] = $negate ? $name.' NOT IN (??)' : $name.' IN (??)';
356 356
                 $par[] = array_slice($value, $i, 500);
357 357
             }
358
-            $sql = '(' . implode($negate ? ' AND ' : ' OR ', $sql) . ')';
358
+            $sql = '('.implode($negate ? ' AND ' : ' OR ', $sql).')';
359 359
             $sqls[] = $sql;
360 360
             $pars = array_merge($pars, $par);
361 361
             return [
362
-                '(' . implode(' AND ', $sqls) . ')',
362
+                '('.implode(' AND ', $sqls).')',
363 363
                 $pars
364 364
             ];
365 365
         }
366
-        $sqls[] = $negate ? $name . ' NOT IN (??)' : $name . ' IN (??)';
366
+        $sqls[] = $negate ? $name.' NOT IN (??)' : $name.' IN (??)';
367 367
         $pars[] = $value;
368 368
         return [
369
-            '(' . implode(' AND ', $sqls) . ')',
369
+            '('.implode(' AND ', $sqls).')',
370 370
             $pars
371 371
         ];
372 372
     }
@@ -398,7 +398,7 @@  discard block
 block discarded – undo
398 398
                 $par = array_merge($par, $temp[1]);
399 399
             }
400 400
         }
401
-        return $this->where('(' . implode(' OR ', $sql) . ')', $par);
401
+        return $this->where('('.implode(' OR ', $sql).')', $par);
402 402
     }
403 403
     /**
404 404
      * Filter the results matching all of the criteria
@@ -416,7 +416,7 @@  discard block
 block discarded – undo
416 416
                 $par = array_merge($par, $temp[1]);
417 417
             }
418 418
         }
419
-        return $this->where('(' . implode(' AND ', $sql) . ')', $par);
419
+        return $this->where('('.implode(' AND ', $sql).')', $par);
420 420
     }
421 421
     /**
422 422
      * Sort by a column
@@ -429,9 +429,9 @@  discard block
 block discarded – undo
429 429
         try {
430 430
             $this->getColumn($column);
431 431
         } catch (DBException $e) {
432
-            throw new DBException('Invalid sort column: ' . $column);
432
+            throw new DBException('Invalid sort column: '.$column);
433 433
         }
434
-        return $this->order($column . ' ' . ($desc ? 'DESC' : 'ASC'));
434
+        return $this->order($column.' '.($desc ? 'DESC' : 'ASC'));
435 435
     }
436 436
     /**
437 437
      * Group by a column (or columns)
@@ -441,7 +441,7 @@  discard block
 block discarded – undo
441 441
     public function group($column) : static
442 442
     {
443 443
         if (!is_array($column)) {
444
-            $column = [ $column ];
444
+            $column = [$column];
445 445
         }
446 446
         foreach ($column as $k => $v) {
447 447
             $column[$k] = $this->getColumn($v)['name'];
@@ -484,7 +484,7 @@  discard block
 block discarded – undo
484 484
         $this->order = [];
485 485
         $this->having = [];
486 486
         $this->aliases = [];
487
-        $this->li_of = [0,0,0];
487
+        $this->li_of = [0, 0, 0];
488 488
         $this->qiterator = null;
489 489
         return $this;
490 490
     }
@@ -497,7 +497,7 @@  discard block
 block discarded – undo
497 497
     public function groupBy(string $sql, array $params = []) : static
498 498
     {
499 499
         $this->qiterator = null;
500
-        $this->group = [ $sql, $params ];
500
+        $this->group = [$sql, $params];
501 501
         return $this;
502 502
     }
503 503
     /**
@@ -511,7 +511,7 @@  discard block
 block discarded – undo
511 511
     public function join($table, array $fields, string $name = null, bool $multiple = true)
512 512
     {
513 513
         $this->qiterator = null;
514
-        $table = $table instanceof Table ? $table : $this->db->definition((string)$table);
514
+        $table = $table instanceof Table ? $table : $this->db->definition((string) $table);
515 515
         $name = $name ?? $table->getName();
516 516
         if (isset($this->joins[$name]) || $this->definition->hasRelation($name)) {
517 517
             throw new DBException('Alias / table name already in use');
@@ -520,7 +520,7 @@  discard block
 block discarded – undo
520 520
         foreach ($fields as $k => $v) {
521 521
             $k = explode('.', $k, 2);
522 522
             $k = count($k) == 2 ? $k[1] : $k[0];
523
-            $this->joins[$name]->keymap[$this->getColumn($name . '.' . $k)['name']] = $this->getColumn($v)['name'];
523
+            $this->joins[$name]->keymap[$this->getColumn($name.'.'.$k)['name']] = $this->getColumn($v)['name'];
524 524
         }
525 525
         return $this;
526 526
     }
@@ -533,7 +533,7 @@  discard block
 block discarded – undo
533 533
     public function where(string $sql, array $params = []) : static
534 534
     {
535 535
         $this->qiterator = null;
536
-        $this->where[] = [ $sql, $params ];
536
+        $this->where[] = [$sql, $params];
537 537
         return $this;
538 538
     }
539 539
     /**
@@ -545,7 +545,7 @@  discard block
 block discarded – undo
545 545
     public function having(string $sql, array $params = []) : static
546 546
     {
547 547
         $this->qiterator = null;
548
-        $this->having[] = [ $sql, $params ];
548
+        $this->having[] = [$sql, $params];
549 549
         return $this;
550 550
     }
551 551
     /**
@@ -565,12 +565,12 @@  discard block
 block discarded – undo
565 565
                     throw new \Exception();
566 566
                 }
567 567
                 $name = $this->getColumn(trim($name))['name'];
568
-                $sql = $name . ' ' . (strpos(strtolower($sql), ' desc') ? 'DESC' : 'ASC');
568
+                $sql = $name.' '.(strpos(strtolower($sql), ' desc') ? 'DESC' : 'ASC');
569 569
             } catch (\Exception $e) {
570 570
                 $name = null;
571 571
             }
572 572
         }
573
-        $this->order = [ $sql, $params, $name ];
573
+        $this->order = [$sql, $params, $name];
574 574
         return $this;
575 575
     }
576 576
     /**
@@ -582,7 +582,7 @@  discard block
 block discarded – undo
582 582
     public function limit(int $limit, int $offset = 0, bool $limitOnMainTable = false) : static
583 583
     {
584 584
         $this->qiterator = null;
585
-        $this->li_of = [ $limit, $offset, $limitOnMainTable ? 1 : 0 ];
585
+        $this->li_of = [$limit, $offset, $limitOnMainTable ? 1 : 0];
586 586
         return $this;
587 587
     }
588 588
     /**
@@ -593,9 +593,9 @@  discard block
 block discarded – undo
593 593
     {
594 594
         $aliases = [];
595 595
         $aliases_ext = [];
596
-        $getAlias = function ($name) use (&$aliases, &$aliases_ext) {
596
+        $getAlias = function($name) use (&$aliases, &$aliases_ext) {
597 597
             // to bypass use: return $name;
598
-            $aliases[$name] = $aliases[$name] ?? 'alias' . static::SEP . count($aliases);
598
+            $aliases[$name] = $aliases[$name] ?? 'alias'.static::SEP.count($aliases);
599 599
             if (isset($aliases_ext[$name])) {
600 600
                 unset($aliases_ext[$name]);
601 601
             }
@@ -618,7 +618,7 @@  discard block
 block discarded – undo
618 618
         $h = $this->having;
619 619
         $o = $this->order;
620 620
         $g = $this->group;
621
-        $j = array_map(function ($v) {
621
+        $j = array_map(function($v) {
622 622
             return clone $v;
623 623
         }, $this->joins);
624 624
 
@@ -628,28 +628,28 @@  discard block
 block discarded – undo
628 628
                 continue;
629 629
             }
630 630
             foreach ($w as $kk => $v) {
631
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
631
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
632 632
                     $used_relations[] = $k;
633
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
633
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
634 634
                 }
635 635
             }
636 636
             foreach ($h as $kk => $v) {
637
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
637
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
638 638
                     $used_relations[] = $k;
639
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
639
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
640 640
                 }
641 641
             }
642
-            if (isset($g[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $g[0])) {
642
+            if (isset($g[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $g[0])) {
643 643
                 $used_relations[] = $k;
644
-                $g[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $g[0]);
644
+                $g[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $g[0]);
645 645
             }
646 646
             foreach ($j as $kk => $v) {
647 647
                 foreach ($v->keymap as $kkk => $vv) {
648
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv)) {
648
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vv)) {
649 649
                         $used_relations[] = $k;
650 650
                         $j[$kk]->keymap[$kkk] = preg_replace(
651
-                            '(\b'.preg_quote($k . '.'). ')i',
652
-                            $getAlias($k) . '.',
651
+                            '(\b'.preg_quote($k.'.').')i',
652
+                            $getAlias($k).'.',
653 653
                             $vv
654 654
                         );
655 655
                     }
@@ -658,65 +658,65 @@  discard block
 block discarded – undo
658 658
         }
659 659
         foreach ($this->definition->getRelations() as $k => $v) {
660 660
             foreach ($w as $kk => $vv) {
661
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv[0])) {
662
-                    $relations[$k] = [ $v, $table ];
661
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $vv[0])) {
662
+                    $relations[$k] = [$v, $table];
663 663
                     $used_relations[] = $k;
664
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $vv[0]);
664
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $vv[0]);
665 665
                 }
666 666
             }
667
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
668
-                $relations[$k] = [ $v, $table ];
667
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
668
+                $relations[$k] = [$v, $table];
669 669
             }
670 670
             foreach ($h as $kk => $vv) {
671
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv[0])) {
672
-                    $relations[$k] = [ $v, $table ];
671
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $vv[0])) {
672
+                    $relations[$k] = [$v, $table];
673 673
                     $used_relations[] = $k;
674
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $vv[0]);
674
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $vv[0]);
675 675
                 }
676 676
             }
677
-            if (isset($g[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $g[0])) {
678
-                $relations[$k] = [ $v, $table ];
677
+            if (isset($g[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $g[0])) {
678
+                $relations[$k] = [$v, $table];
679 679
                 $used_relations[] = $k;
680
-                $g[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $g[0]);
680
+                $g[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $g[0]);
681 681
             }
682 682
             foreach ($j as $kk => $vv) {
683 683
                 foreach ($vv->keymap as $kkk => $vvv) {
684
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vvv)) {
685
-                        $relations[$k] = [ $v, $table ];
684
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vvv)) {
685
+                        $relations[$k] = [$v, $table];
686 686
                         $used_relations[] = $k;
687 687
                         $j[$kk]->keymap[$kkk] =
688
-                            preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $vvv);
688
+                            preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $vvv);
689 689
                     }
690 690
                 }
691 691
             }
692 692
         }
693 693
         foreach ($aliases_ext as $k => $alias) {
694 694
             foreach ($w as $kk => $v) {
695
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
696
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $v[0]);
695
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
696
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $v[0]);
697 697
                     $used_relations[] = $k;
698 698
                 }
699 699
             }
700 700
             foreach ($h as $kk => $v) {
701
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
702
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $v[0]);
701
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
702
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $v[0]);
703 703
                     $used_relations[] = $k;
704 704
                 }
705 705
             }
706
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
706
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
707 707
                 $used_relations[] = $k;
708 708
             }
709
-            if (isset($g[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $g[0])) {
710
-                $g[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $g[0]);
709
+            if (isset($g[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $g[0])) {
710
+                $g[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $g[0]);
711 711
                 $used_relations[] = $k;
712 712
             }
713 713
             foreach ($j as $kk => $v) {
714 714
                 foreach ($v->keymap as $kkk => $vv) {
715
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv)) {
715
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vv)) {
716 716
                         $used_relations[] = $k;
717 717
                         $j[$kk]->keymap[$kkk] = preg_replace(
718
-                            '(\b'.preg_quote($k . '.'). ')i',
719
-                            $alias . '.',
718
+                            '(\b'.preg_quote($k.'.').')i',
719
+                            $alias.'.',
720 720
                             $vv
721 721
                         );
722 722
                     }
@@ -735,13 +735,13 @@  discard block
 block discarded – undo
735 735
                     foreach ($v->keymap as $kk => $vv) {
736 736
                         $tmp[] = $table.'.'.$kk.' = '.$alias.'.'.$vv.' ';
737 737
                     }
738
-                    $sql .= implode(' AND ', $tmp) . ' ';
738
+                    $sql .= implode(' AND ', $tmp).' ';
739 739
                     $sql .= 'LEFT JOIN '.$v->table->getFullName().' '.$getAlias($k).' ON ';
740 740
                     $tmp = [];
741 741
                     foreach ($v->pivot_keymap as $kk => $vv) {
742 742
                         $tmp[] = $getAlias($k).'.'.$vv.' = '.$alias.'.'.$kk.' ';
743 743
                     }
744
-                    $sql .= implode(' AND ', $tmp) . ' ';
744
+                    $sql .= implode(' AND ', $tmp).' ';
745 745
                 } else {
746 746
                     $alias = $getAlias($k);
747 747
                     $sql .= 'LEFT JOIN '.$v->table->getFullName().' '.$alias.' ON ';
@@ -750,10 +750,10 @@  discard block
 block discarded – undo
750 750
                         $tmp[] = $table.'.'.$kk.' = '.$alias.'.'.$vv.' ';
751 751
                     }
752 752
                     if ($v->sql) {
753
-                        $tmp[] = $v->sql . ' ';
753
+                        $tmp[] = $v->sql.' ';
754 754
                         $par = array_merge($par, $v->par ?? []);
755 755
                     }
756
-                    $sql .= implode(' AND ', $tmp) . ' ';
756
+                    $sql .= implode(' AND ', $tmp).' ';
757 757
                 }
758 758
             }
759 759
         }
@@ -762,12 +762,12 @@  discard block
 block discarded – undo
762 762
             if ($v->many) {
763 763
                 $jMany = true;
764 764
             }
765
-            $sql .= ($v->many ? 'LEFT ' : '' ) . 'JOIN '.$v->table->getFullName().' '.$k.' ON ';
765
+            $sql .= ($v->many ? 'LEFT ' : '').'JOIN '.$v->table->getFullName().' '.$k.' ON ';
766 766
             $tmp = [];
767 767
             foreach ($v->keymap as $kk => $vv) {
768 768
                 $tmp[] = $kk.' = '.$vv;
769 769
             }
770
-            $sql .= implode(' AND ', $tmp) . ' ';
770
+            $sql .= implode(' AND ', $tmp).' ';
771 771
         }
772 772
         if (!$jMany && !count($used_relations)) {
773 773
             $sql = str_replace('COUNT(DISTINCT ', 'COUNT(', $sql);
@@ -776,20 +776,20 @@  discard block
 block discarded – undo
776 776
             $sql .= 'WHERE ';
777 777
             $tmp = [];
778 778
             foreach ($w as $v) {
779
-                $tmp[] = '(' . $v[0] . ')';
779
+                $tmp[] = '('.$v[0].')';
780 780
                 $par = array_merge($par, $v[1]);
781 781
             }
782 782
             $sql .= implode(' AND ', $tmp).' ';
783 783
         }
784 784
         if (count($g)) {
785
-            $sql .= 'GROUP BY ' . $g[0] . ' ';
785
+            $sql .= 'GROUP BY '.$g[0].' ';
786 786
             $par = array_merge($par, $g[1]);
787 787
         }
788 788
         if (count($h)) {
789 789
             $sql .= 'HAVING ';
790 790
             $tmp = [];
791 791
             foreach ($h as $v) {
792
-                $tmp[] = '(' . $v[0] . ')';
792
+                $tmp[] = '('.$v[0].')';
793 793
                 $par = array_merge($par, $v[1]);
794 794
             }
795 795
             $sql .= implode(' AND ', $tmp).' ';
@@ -817,14 +817,14 @@  discard block
 block discarded – undo
817 817
                     } elseif (isset($this->joins[$table])) {
818 818
                         $cols = $this->joins[$table]->table->getColumns();
819 819
                     } else {
820
-                        throw new DBException('Invalid foreign table name: ' . $table);
820
+                        throw new DBException('Invalid foreign table name: '.$table);
821 821
                     }
822 822
                 } else {
823 823
                     array_pop($temp);
824 824
                     $this->with(implode('.', $temp));
825 825
                     $table = array_reduce(
826 826
                         $temp,
827
-                        function ($carry, $item) use (&$table) {
827
+                        function($carry, $item) use (&$table) {
828 828
                             return $table->getRelation($item)->table;
829 829
                         }
830 830
                     );
@@ -833,7 +833,7 @@  discard block
 block discarded – undo
833 833
                 }
834 834
                 unset($fields[$k]);
835 835
                 foreach ($cols as $col) {
836
-                    $fields[] = $table . '.' . $col;
836
+                    $fields[] = $table.'.'.$col;
837 837
                 }
838 838
             }
839 839
         }
@@ -868,9 +868,9 @@  discard block
 block discarded – undo
868 868
         }
869 869
         $aliases = [];
870 870
         $aliases_ext = [];
871
-        $getAlias = function ($name) use (&$aliases, &$aliases_ext) {
871
+        $getAlias = function($name) use (&$aliases, &$aliases_ext) {
872 872
             // to bypass use: return $name;
873
-            $aliases[$name] = $aliases[$name] ?? 'alias' . static::SEP . count($aliases);
873
+            $aliases[$name] = $aliases[$name] ?? 'alias'.static::SEP.count($aliases);
874 874
             if (isset($aliases_ext[$name])) {
875 875
                 unset($aliases_ext[$name]);
876 876
             }
@@ -895,7 +895,7 @@  discard block
 block discarded – undo
895 895
         $h = $this->having;
896 896
         $o = $this->order;
897 897
         $g = $this->group;
898
-        $j = array_map(function ($v) {
898
+        $j = array_map(function($v) {
899 899
             return clone $v;
900 900
         }, $this->joins);
901 901
 
@@ -909,32 +909,32 @@  discard block
 block discarded – undo
909 909
                 continue;
910 910
             }
911 911
             foreach ($f as $kk => $field) {
912
-                if (strpos($field, $k . '.') === 0) {
913
-                    $f[$kk] = str_replace($k . '.', $getAlias($k) . '.', $field);
912
+                if (strpos($field, $k.'.') === 0) {
913
+                    $f[$kk] = str_replace($k.'.', $getAlias($k).'.', $field);
914 914
                 }
915 915
             }
916 916
             foreach ($w as $kk => $v) {
917
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
918
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
917
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
918
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
919 919
                 }
920 920
             }
921 921
             foreach ($h as $kk => $v) {
922
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
923
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
922
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
923
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
924 924
                 }
925 925
             }
926
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
927
-                $o[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $o[0]);
926
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
927
+                $o[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $o[0]);
928 928
             }
929
-            if (isset($g[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $g[0])) {
930
-                $g[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $g[0]);
929
+            if (isset($g[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $g[0])) {
930
+                $g[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $g[0]);
931 931
             }
932 932
             foreach ($j as $kk => $v) {
933 933
                 foreach ($v->keymap as $kkk => $vv) {
934
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv)) {
934
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vv)) {
935 935
                         $j[$kk]->keymap[$kkk] = preg_replace(
936
-                            '(\b'.preg_quote($k . '.'). ')i',
937
-                            $getAlias($k) . '.',
936
+                            '(\b'.preg_quote($k.'.').')i',
937
+                            $getAlias($k).'.',
938 938
                             $vv
939 939
                         );
940 940
                     }
@@ -943,38 +943,38 @@  discard block
 block discarded – undo
943 943
         }
944 944
         foreach ($this->definition->getRelations() as $k => $relation) {
945 945
             foreach ($f as $kk => $field) {
946
-                if (strpos($field, $k . '.') === 0) {
947
-                    $relations[$k] = [ $relation, $table ];
948
-                    $f[$kk] = str_replace($k . '.', $getAlias($k) . '.', $field);
946
+                if (strpos($field, $k.'.') === 0) {
947
+                    $relations[$k] = [$relation, $table];
948
+                    $f[$kk] = str_replace($k.'.', $getAlias($k).'.', $field);
949 949
                 }
950 950
             }
951 951
             foreach ($w as $kk => $v) {
952
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
953
-                    $relations[$k] = [ $relation, $table ];
954
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
952
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
953
+                    $relations[$k] = [$relation, $table];
954
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
955 955
                 }
956 956
             }
957 957
             foreach ($h as $kk => $v) {
958
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
959
-                    $relations[$k] = [ $relation, $table ];
960
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
958
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
959
+                    $relations[$k] = [$relation, $table];
960
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
961 961
                 }
962 962
             }
963
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
964
-                $relations[$k] = [ $relation, $table ];
965
-                $o[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $o[0]);
963
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
964
+                $relations[$k] = [$relation, $table];
965
+                $o[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $o[0]);
966 966
             }
967
-            if (isset($g[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $g[0])) {
968
-                $relations[$k] = [ $relation, $table ];
969
-                $g[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $g[0]);
967
+            if (isset($g[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $g[0])) {
968
+                $relations[$k] = [$relation, $table];
969
+                $g[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $g[0]);
970 970
             }
971 971
             foreach ($j as $kk => $v) {
972 972
                 foreach ($v->keymap as $kkk => $vv) {
973
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv)) {
974
-                        $relations[$k] = [ $relation, $table ];
973
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vv)) {
974
+                        $relations[$k] = [$relation, $table];
975 975
                         $j[$kk]->keymap[$kkk] = preg_replace(
976
-                            '(\b'.preg_quote($k . '.'). ')i',
977
-                            $getAlias($k) . '.',
976
+                            '(\b'.preg_quote($k.'.').')i',
977
+                            $getAlias($k).'.',
978 978
                             $vv
979 979
                         );
980 980
                     }
@@ -983,32 +983,32 @@  discard block
 block discarded – undo
983 983
         }
984 984
         foreach ($aliases_ext as $k => $alias) {
985 985
             foreach ($f as $kk => $field) {
986
-                if (strpos($field, $k . '.') === 0) {
987
-                    $f[$kk] = str_replace($k . '.', $alias . '.', $field);
986
+                if (strpos($field, $k.'.') === 0) {
987
+                    $f[$kk] = str_replace($k.'.', $alias.'.', $field);
988 988
                 }
989 989
             }
990 990
             foreach ($w as $kk => $v) {
991
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
992
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $v[0]);
991
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
992
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $v[0]);
993 993
                 }
994 994
             }
995 995
             foreach ($h as $kk => $v) {
996
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
997
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $v[0]);
996
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
997
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $v[0]);
998 998
                 }
999 999
             }
1000
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
1001
-                $o[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $o[0]);
1000
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
1001
+                $o[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $o[0]);
1002 1002
             }
1003
-            if (isset($g[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $g[0])) {
1004
-                $g[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $g[0]);
1003
+            if (isset($g[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $g[0])) {
1004
+                $g[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $g[0]);
1005 1005
             }
1006 1006
             foreach ($j as $kk => $v) {
1007 1007
                 foreach ($v->keymap as $kkk => $vv) {
1008
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv)) {
1008
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vv)) {
1009 1009
                         $j[$kk]->keymap[$kkk] = preg_replace(
1010
-                            '(\b'.preg_quote($k . '.'). ')i',
1011
-                            $alias . '.',
1010
+                            '(\b'.preg_quote($k.'.').')i',
1011
+                            $alias.'.',
1012 1012
                             $vv
1013 1013
                         );
1014 1014
                     }
@@ -1017,12 +1017,12 @@  discard block
 block discarded – undo
1017 1017
         }
1018 1018
         $select = [];
1019 1019
         foreach ($f as $k => $field) {
1020
-            $select[] = $field . (!is_numeric($k) ? ' ' . $k : '');
1020
+            $select[] = $field.(!is_numeric($k) ? ' '.$k : '');
1021 1021
         }
1022 1022
         foreach ($this->withr as $name => $relation) {
1023 1023
             if ($relation[2]) {
1024 1024
                 foreach ($relation[0]->table->getColumns() as $column) {
1025
-                    $select[] = $getAlias($name) . '.' . $column . ' ' . $getAlias($name . static::SEP . $column);
1025
+                    $select[] = $getAlias($name).'.'.$column.' '.$getAlias($name.static::SEP.$column);
1026 1026
                 }
1027 1027
             }
1028 1028
         }
@@ -1043,13 +1043,13 @@  discard block
 block discarded – undo
1043 1043
                 foreach ($v->keymap as $kk => $vv) {
1044 1044
                     $tmp[] = $table.'.'.$kk.' = '.$alias.'.'.$vv.' ';
1045 1045
                 }
1046
-                $sql .= implode(' AND ', $tmp) . ' ';
1046
+                $sql .= implode(' AND ', $tmp).' ';
1047 1047
                 $sql .= 'LEFT JOIN '.$v->table->getFullName().' '.$getAlias($relation).' ON ';
1048 1048
                 $tmp = [];
1049 1049
                 foreach ($v->pivot_keymap as $kk => $vv) {
1050 1050
                     $tmp[] = $getAlias($relation).'.'.$vv.' = '.$alias.'.'.$kk.' ';
1051 1051
                 }
1052
-                $sql .= implode(' AND ', $tmp) . ' ';
1052
+                $sql .= implode(' AND ', $tmp).' ';
1053 1053
             } else {
1054 1054
                 $alias = $getAlias($relation);
1055 1055
 
@@ -1059,22 +1059,22 @@  discard block
 block discarded – undo
1059 1059
                     $tmp[] = $table.'.'.$kk.' = '.$alias.'.'.$vv.' ';
1060 1060
                 }
1061 1061
                 if ($v->sql) {
1062
-                    $tmp[] = $v->sql . ' ';
1062
+                    $tmp[] = $v->sql.' ';
1063 1063
                     $par = array_merge($par, $v->par ?? []);
1064 1064
                 }
1065
-                $sql .= implode(' AND ', $tmp) . ' ';
1065
+                $sql .= implode(' AND ', $tmp).' ';
1066 1066
             }
1067 1067
         }
1068 1068
         foreach ($j as $k => $v) {
1069 1069
             if ($v->many) {
1070 1070
                 $many = true;
1071 1071
             }
1072
-            $sql .= ($v->many ? 'LEFT ' : '' ) . 'JOIN '.$v->table->getFullName().' '.$k.' ON ';
1072
+            $sql .= ($v->many ? 'LEFT ' : '').'JOIN '.$v->table->getFullName().' '.$k.' ON ';
1073 1073
             $tmp = [];
1074 1074
             foreach ($v->keymap as $kk => $vv) {
1075 1075
                 $tmp[] = $kk.' = '.$vv;
1076 1076
             }
1077
-            $sql .= implode(' AND ', $tmp) . ' ';
1077
+            $sql .= implode(' AND ', $tmp).' ';
1078 1078
         }
1079 1079
         if ($many && count($porder) && $this->li_of[2] === 1) {
1080 1080
             $ids = $this->ids();
@@ -1082,9 +1082,9 @@  discard block
 block discarded – undo
1082 1082
                 if (count($porder) > 1) {
1083 1083
                     $pkw = [];
1084 1084
                     foreach ($porder as $name) {
1085
-                        $pkw[] = $name . ' = ?';
1085
+                        $pkw[] = $name.' = ?';
1086 1086
                     }
1087
-                    $pkw = '(' . implode(' AND ', $pkw) . ')';
1087
+                    $pkw = '('.implode(' AND ', $pkw).')';
1088 1088
                     $pkp = [];
1089 1089
                     foreach ($ids as $id) {
1090 1090
                         foreach ($id as $p) {
@@ -1096,60 +1096,60 @@  discard block
 block discarded – undo
1096 1096
                         $pkp
1097 1097
                     ];
1098 1098
                 } else {
1099
-                    $w[] = [ $porder[0] . ' IN ('.implode(',', array_fill(0, count($ids), '?')).')', $ids ];
1099
+                    $w[] = [$porder[0].' IN ('.implode(',', array_fill(0, count($ids), '?')).')', $ids];
1100 1100
                 }
1101 1101
             } else {
1102
-                $w[] = [ '1=0', [] ];
1102
+                $w[] = ['1=0', []];
1103 1103
             }
1104 1104
         }
1105 1105
         if (count($w)) {
1106 1106
             $sql .= 'WHERE ';
1107 1107
             $tmp = [];
1108 1108
             foreach ($w as $v) {
1109
-                $tmp[] = '(' . $v[0] . ')';
1109
+                $tmp[] = '('.$v[0].')';
1110 1110
                 $par = array_merge($par, $v[1]);
1111 1111
             }
1112 1112
             $sql .= implode(' AND ', $tmp).' ';
1113 1113
         }
1114 1114
         if (count($g)) {
1115
-            $sql .= 'GROUP BY ' . $g[0] . ' ';
1115
+            $sql .= 'GROUP BY '.$g[0].' ';
1116 1116
             $par = array_merge($par, $g[1]);
1117 1117
         }
1118 1118
         if (count($h)) {
1119 1119
             $sql .= 'HAVING ';
1120 1120
             $tmp = [];
1121 1121
             foreach ($h as $v) {
1122
-                $tmp[] = '(' . $v[0] . ')';
1122
+                $tmp[] = '('.$v[0].')';
1123 1123
                 $par = array_merge($par, $v[1]);
1124 1124
             }
1125 1125
             $sql .= implode(' AND ', $tmp).' ';
1126 1126
         }
1127 1127
         $ordered = false;
1128 1128
         if (count($o)) {
1129
-            $sql .= 'ORDER BY ' . $o[0] . ' ';
1129
+            $sql .= 'ORDER BY '.$o[0].' ';
1130 1130
             $par = array_merge($par, $o[1]);
1131 1131
             $ordered = true;
1132 1132
         }
1133 1133
         if (!count($g) && count($porder)) {
1134 1134
             $pdir = (count($o) && strpos($o[0], 'DESC') !== false) ? 'DESC' : 'ASC';
1135
-            $porder = array_map(function ($v) use ($pdir) {
1136
-                return $v . ' ' . $pdir;
1135
+            $porder = array_map(function($v) use ($pdir) {
1136
+                return $v.' '.$pdir;
1137 1137
             }, $porder);
1138
-            $sql .= ($ordered ? ', ' : 'ORDER BY ') . implode(', ', $porder) . ' ';
1138
+            $sql .= ($ordered ? ', ' : 'ORDER BY ').implode(', ', $porder).' ';
1139 1139
             $ordered = true;
1140 1140
         }
1141 1141
         foreach ($this->withr as $k => $v) {
1142 1142
             if (isset($v[3])) {
1143
-                $sql .= ($ordered ? ', ' : 'ORDER BY ') . $getAlias($k) . '.' . $v[3] . ' ' . ($v[4] ? 'DESC' : 'ASC');
1143
+                $sql .= ($ordered ? ', ' : 'ORDER BY ').$getAlias($k).'.'.$v[3].' '.($v[4] ? 'DESC' : 'ASC');
1144 1144
                 $ordered = true;
1145 1145
             }
1146 1146
         }
1147 1147
         if ((!$many || $this->li_of[2] === 0 || !count($porder)) && $this->li_of[0]) {
1148 1148
             if ($this->db->driverName() === 'oracle') {
1149
-                if ((int)$this->db->driverOption('version', 0) >= 12) {
1150
-                    $sql .= 'OFFSET ' . $this->li_of[1] . ' ROWS FETCH NEXT ' . $this->li_of[0] . ' ROWS ONLY';
1149
+                if ((int) $this->db->driverOption('version', 0) >= 12) {
1150
+                    $sql .= 'OFFSET '.$this->li_of[1].' ROWS FETCH NEXT '.$this->li_of[0].' ROWS ONLY';
1151 1151
                 } else {
1152
-                    $f = array_map(function ($v) {
1152
+                    $f = array_map(function($v) {
1153 1153
                         $v = explode(' ', trim($v), 2);
1154 1154
                         if (count($v) === 2) {
1155 1155
                             return $v[1];
@@ -1157,16 +1157,16 @@  discard block
 block discarded – undo
1157 1157
                         $v = explode('.', $v[0], 2);
1158 1158
                         return count($v) === 2 ? $v[1] : $v[0];
1159 1159
                     }, $select);
1160
-                    $sql = "SELECT " . implode(', ', $f) . "
1160
+                    $sql = "SELECT ".implode(', ', $f)."
1161 1161
                             FROM (
1162 1162
                                 SELECT tbl__.*, rownum rnum__ FROM (
1163
-                                    " . $sql . "
1163
+                                    " . $sql."
1164 1164
                                 ) tbl__
1165
-                                WHERE rownum <= " . ($this->li_of[0] + $this->li_of[1]) . "
1165
+                                WHERE rownum <= " . ($this->li_of[0] + $this->li_of[1])."
1166 1166
                             ) WHERE rnum__ > " . $this->li_of[1];
1167 1167
                 }
1168 1168
             } else {
1169
-                $sql .= 'LIMIT ' . $this->li_of[0] . ' OFFSET ' . $this->li_of[1];
1169
+                $sql .= 'LIMIT '.$this->li_of[0].' OFFSET '.$this->li_of[1];
1170 1170
             }
1171 1171
         }
1172 1172
         return $this->qiterator = new TableQueryIterator(
@@ -1216,12 +1216,12 @@  discard block
 block discarded – undo
1216 1216
                 $ret[$k] = str_repeat(' ', 255);
1217 1217
                 $par[] = &$ret[$k];
1218 1218
             }
1219
-            $sql .= ' RETURNING ' . implode(',', $primary) .
1220
-                ' INTO ' . implode(',', array_fill(0, count($primary), '?'));
1219
+            $sql .= ' RETURNING '.implode(',', $primary).
1220
+                ' INTO '.implode(',', array_fill(0, count($primary), '?'));
1221 1221
             $this->db->query($sql, $par);
1222 1222
             return $ret;
1223 1223
         } elseif ($this->db->driverName() === 'postgre') {
1224
-            $sql .= ' RETURNING ' . implode(',', $primary);
1224
+            $sql .= ' RETURNING '.implode(',', $primary);
1225 1225
             return $this->db->one($sql, $par, false);
1226 1226
         } else {
1227 1227
             $ret = [];
@@ -1252,9 +1252,9 @@  discard block
 block discarded – undo
1252 1252
         }
1253 1253
         $sql = 'UPDATE '.$table.' SET ';
1254 1254
         $par = [];
1255
-        $sql .= implode(', ', array_map(function ($v) {
1256
-            return $v . ' = ?';
1257
-        }, array_keys($update))) . ' ';
1255
+        $sql .= implode(', ', array_map(function($v) {
1256
+            return $v.' = ?';
1257
+        }, array_keys($update))).' ';
1258 1258
         $par = array_merge($par, array_values($update));
1259 1259
         if (count($this->where)) {
1260 1260
             $sql .= 'WHERE ';
@@ -1263,7 +1263,7 @@  discard block
 block discarded – undo
1263 1263
                 $tmp[] = $v[0];
1264 1264
                 $par = array_merge($par, $v[1]);
1265 1265
             }
1266
-            $sql .= implode(' AND ', $tmp) . ' ';
1266
+            $sql .= implode(' AND ', $tmp).' ';
1267 1267
         }
1268 1268
         if (count($this->order)) {
1269 1269
             $sql .= $this->order[0];
@@ -1287,7 +1287,7 @@  discard block
 block discarded – undo
1287 1287
                 $tmp[] = $v[0];
1288 1288
                 $par = array_merge($par, $v[1]);
1289 1289
             }
1290
-            $sql .= implode(' AND ', $tmp) . ' ';
1290
+            $sql .= implode(' AND ', $tmp).' ';
1291 1291
         }
1292 1292
         if (count($this->order)) {
1293 1293
             $sql .= $this->order[0];
@@ -1318,15 +1318,15 @@  discard block
 block discarded – undo
1318 1318
             try {
1319 1319
                 $name = array_reduce(
1320 1320
                     $parts,
1321
-                    function ($carry, $item) use (&$table, $select) {
1321
+                    function($carry, $item) use (&$table, $select) {
1322 1322
                         if (!$table->hasRelation($item)) {
1323
-                            throw new DBException('Invalid relation name: '.$table->getName().' -> ' . $item);
1323
+                            throw new DBException('Invalid relation name: '.$table->getName().' -> '.$item);
1324 1324
                         }
1325 1325
                         $relation = $table->getRelation($item);
1326 1326
                         if (!$relation) {
1327
-                            throw new DBException('Invalid relation name: '.$table->getName().' -> ' . $item);
1327
+                            throw new DBException('Invalid relation name: '.$table->getName().' -> '.$item);
1328 1328
                         }
1329
-                        $name = $carry ? $carry . static::SEP . $item : $item;
1329
+                        $name = $carry ? $carry.static::SEP.$item : $item;
1330 1330
                         $this->withr[$name] = [
1331 1331
                             $relation,
1332 1332
                             $carry ?? $table->getName(),
@@ -1395,9 +1395,9 @@  discard block
 block discarded – undo
1395 1395
 
1396 1396
         $aliases = [];
1397 1397
         $aliases_ext = [];
1398
-        $getAlias = function ($name) use (&$aliases, &$aliases_ext) {
1398
+        $getAlias = function($name) use (&$aliases, &$aliases_ext) {
1399 1399
             // to bypass use: return $name;
1400
-            $aliases[$name] = $aliases[$name] ?? 'alias' . static::SEP . count($aliases);
1400
+            $aliases[$name] = $aliases[$name] ?? 'alias'.static::SEP.count($aliases);
1401 1401
             if (isset($aliases_ext[$name])) {
1402 1402
                 unset($aliases_ext[$name]);
1403 1403
             }
@@ -1417,7 +1417,7 @@  discard block
 block discarded – undo
1417 1417
         $w = $this->where;
1418 1418
         $h = $this->having;
1419 1419
         $o = $this->order;
1420
-        $j = array_map(function ($v) {
1420
+        $j = array_map(function($v) {
1421 1421
             return clone $v;
1422 1422
         }, $this->joins);
1423 1423
 
@@ -1426,24 +1426,24 @@  discard block
 block discarded – undo
1426 1426
                 continue;
1427 1427
             }
1428 1428
             foreach ($w as $kk => $v) {
1429
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
1430
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
1429
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
1430
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
1431 1431
                 }
1432 1432
             }
1433 1433
             foreach ($h as $kk => $v) {
1434
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
1435
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $v[0]);
1434
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
1435
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $v[0]);
1436 1436
                 }
1437 1437
             }
1438
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
1439
-                $o[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $o[0]);
1438
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
1439
+                $o[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $o[0]);
1440 1440
             }
1441 1441
             foreach ($j as $kk => $v) {
1442 1442
                 foreach ($v->keymap as $kkk => $vv) {
1443
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv)) {
1443
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vv)) {
1444 1444
                         $j[$kk]->keymap[$kkk] = preg_replace(
1445
-                            '(\b'.preg_quote($k . '.'). ')i',
1446
-                            $getAlias($k) . '.',
1445
+                            '(\b'.preg_quote($k.'.').')i',
1446
+                            $getAlias($k).'.',
1447 1447
                             $vv
1448 1448
                         );
1449 1449
                     }
@@ -1452,52 +1452,52 @@  discard block
 block discarded – undo
1452 1452
         }
1453 1453
         foreach ($this->definition->getRelations() as $k => $v) {
1454 1454
             foreach ($w as $kk => $vv) {
1455
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv[0])) {
1456
-                    $relations[$k] = [ $v, $table ];
1457
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $vv[0]);
1455
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $vv[0])) {
1456
+                    $relations[$k] = [$v, $table];
1457
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $vv[0]);
1458 1458
                 }
1459 1459
             }
1460
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
1461
-                $relations[$k] = [ $v, $table ];
1462
-                $o[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $o[0]);
1463
-                $o[2] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $o[2]);
1460
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
1461
+                $relations[$k] = [$v, $table];
1462
+                $o[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $o[0]);
1463
+                $o[2] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $o[2]);
1464 1464
             }
1465 1465
             foreach ($h as $kk => $vv) {
1466
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv[0])) {
1467
-                    $relations[$k] = [ $v, $table ];
1468
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $vv[0]);
1466
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $vv[0])) {
1467
+                    $relations[$k] = [$v, $table];
1468
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $vv[0]);
1469 1469
                 }
1470 1470
             }
1471 1471
             foreach ($j as $kk => $vv) {
1472 1472
                 foreach ($vv->keymap as $kkk => $vvv) {
1473
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vvv)) {
1474
-                        $relations[$k] = [ $v, $table ];
1473
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vvv)) {
1474
+                        $relations[$k] = [$v, $table];
1475 1475
                         $j[$kk]->keymap[$kkk] =
1476
-                            preg_replace('(\b'.preg_quote($k . '.'). ')i', $getAlias($k) . '.', $vvv);
1476
+                            preg_replace('(\b'.preg_quote($k.'.').')i', $getAlias($k).'.', $vvv);
1477 1477
                     }
1478 1478
                 }
1479 1479
             }
1480 1480
         }
1481 1481
         foreach ($aliases_ext as $k => $alias) {
1482 1482
             foreach ($w as $kk => $v) {
1483
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
1484
-                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $v[0]);
1483
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
1484
+                    $w[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $v[0]);
1485 1485
                 }
1486 1486
             }
1487 1487
             foreach ($h as $kk => $v) {
1488
-                if (preg_match('(\b'.preg_quote($k . '.'). ')i', $v[0])) {
1489
-                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $v[0]);
1488
+                if (preg_match('(\b'.preg_quote($k.'.').')i', $v[0])) {
1489
+                    $h[$kk][0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $v[0]);
1490 1490
                 }
1491 1491
             }
1492
-            if (isset($o[0]) && preg_match('(\b'.preg_quote($k . '.'). ')i', $o[0])) {
1493
-                $o[0] = preg_replace('(\b'.preg_quote($k . '.'). ')i', $alias . '.', $o[0]);
1492
+            if (isset($o[0]) && preg_match('(\b'.preg_quote($k.'.').')i', $o[0])) {
1493
+                $o[0] = preg_replace('(\b'.preg_quote($k.'.').')i', $alias.'.', $o[0]);
1494 1494
             }
1495 1495
             foreach ($j as $kk => $v) {
1496 1496
                 foreach ($v->keymap as $kkk => $vv) {
1497
-                    if (preg_match('(\b'.preg_quote($k . '.'). ')i', $vv)) {
1497
+                    if (preg_match('(\b'.preg_quote($k.'.').')i', $vv)) {
1498 1498
                         $j[$kk]->keymap[$kkk] = preg_replace(
1499
-                            '(\b'.preg_quote($k . '.'). ')i',
1500
-                            $alias . '.',
1499
+                            '(\b'.preg_quote($k.'.').')i',
1500
+                            $alias.'.',
1501 1501
                             $vv
1502 1502
                         );
1503 1503
                     }
@@ -1505,29 +1505,29 @@  discard block
 block discarded – undo
1505 1505
             }
1506 1506
         }
1507 1507
 
1508
-        $key = array_map(function ($v) use ($table) {
1509
-            return $table . '.' . $v;
1508
+        $key = array_map(function($v) use ($table) {
1509
+            return $table.'.'.$v;
1510 1510
         }, $this->pkey);
1511 1511
         $own = false;
1512 1512
         $dir = 'ASC';
1513 1513
         if (count($o)) {
1514 1514
             $dir = strpos($o[0], ' DESC') ? 'DESC' : 'ASC';
1515
-            $own = strpos($o[2], $table . '.') === 0;
1515
+            $own = strpos($o[2], $table.'.') === 0;
1516 1516
         }
1517 1517
 
1518 1518
         $dst = $key;
1519 1519
         if (count($o)) {
1520 1520
             if ($own) {
1521 1521
                 // if using own table - do not use max/min in order - that will prevent index usage
1522
-                $dst[] = $o[2] . ' orderbyfix___';
1522
+                $dst[] = $o[2].' orderbyfix___';
1523 1523
             } else {
1524
-                $dst[] = 'MAX(' . $o[2] . ') orderbyfix___';
1524
+                $dst[] = 'MAX('.$o[2].') orderbyfix___';
1525 1525
             }
1526 1526
         }
1527 1527
         $dst = array_unique($dst);
1528 1528
 
1529 1529
         $par = [];
1530
-        $sql  = 'SELECT DISTINCT '.implode(', ', $dst).' FROM '.$this->definition->getFullName().' ';
1530
+        $sql = 'SELECT DISTINCT '.implode(', ', $dst).' FROM '.$this->definition->getFullName().' ';
1531 1531
         foreach ($relations as $k => $v) {
1532 1532
             $table = $v[1] !== $this->definition->getName() ? $getAlias($v[1]) : $v[1];
1533 1533
             $v = $v[0];
@@ -1538,13 +1538,13 @@  discard block
 block discarded – undo
1538 1538
                 foreach ($v->keymap as $kk => $vv) {
1539 1539
                     $tmp[] = $table.'.'.$kk.' = '.$alias.'.'.$vv.' ';
1540 1540
                 }
1541
-                $sql .= implode(' AND ', $tmp) . ' ';
1541
+                $sql .= implode(' AND ', $tmp).' ';
1542 1542
                 $sql .= 'LEFT JOIN '.$v->table->getFullName().' '.$getAlias($k).' ON ';
1543 1543
                 $tmp = [];
1544 1544
                 foreach ($v->pivot_keymap as $kk => $vv) {
1545 1545
                     $tmp[] = $getAlias($k).'.'.$vv.' = '.$alias.'.'.$kk.' ';
1546 1546
                 }
1547
-                $sql .= implode(' AND ', $tmp) . ' ';
1547
+                $sql .= implode(' AND ', $tmp).' ';
1548 1548
             } else {
1549 1549
                 $alias = $getAlias($k);
1550 1550
                 $sql .= 'LEFT JOIN '.$v->table->getFullName().' '.$alias.' ON ';
@@ -1553,37 +1553,37 @@  discard block
 block discarded – undo
1553 1553
                     $tmp[] = $table.'.'.$kk.' = '.$alias.'.'.$vv.' ';
1554 1554
                 }
1555 1555
                 if ($v->sql) {
1556
-                    $tmp[] = $v->sql . ' ';
1556
+                    $tmp[] = $v->sql.' ';
1557 1557
                     $par = array_merge($par, $v->par ?? []);
1558 1558
                 }
1559
-                $sql .= implode(' AND ', $tmp) . ' ';
1559
+                $sql .= implode(' AND ', $tmp).' ';
1560 1560
             }
1561 1561
         }
1562 1562
         foreach ($j as $k => $v) {
1563
-            $sql .= ($v->many ? 'LEFT ' : '' ) . 'JOIN '.$v->table->getFullName().' '.$k.' ON ';
1563
+            $sql .= ($v->many ? 'LEFT ' : '').'JOIN '.$v->table->getFullName().' '.$k.' ON ';
1564 1564
             $tmp = [];
1565 1565
             foreach ($v->keymap as $kk => $vv) {
1566 1566
                 $tmp[] = $kk.' = '.$vv;
1567 1567
             }
1568
-            $sql .= implode(' AND ', $tmp) . ' ';
1568
+            $sql .= implode(' AND ', $tmp).' ';
1569 1569
         }
1570 1570
         if (count($w)) {
1571 1571
             $sql .= 'WHERE ';
1572 1572
             $tmp = [];
1573 1573
             foreach ($w as $v) {
1574
-                $tmp[] = '(' . $v[0] . ')';
1574
+                $tmp[] = '('.$v[0].')';
1575 1575
                 $par = array_merge($par, $v[1]);
1576 1576
             }
1577 1577
             $sql .= implode(' AND ', $tmp).' ';
1578 1578
         }
1579 1579
         if (!$own) {
1580
-            $sql .= 'GROUP BY ' . implode(', ', $key) . ' ';
1580
+            $sql .= 'GROUP BY '.implode(', ', $key).' ';
1581 1581
         }
1582 1582
         if (count($h)) {
1583 1583
             $sql .= 'HAVING ';
1584 1584
             $tmp = [];
1585 1585
             foreach ($h as $v) {
1586
-                $tmp[] = '(' . $v[0] . ')';
1586
+                $tmp[] = '('.$v[0].')';
1587 1587
                 $par = array_merge($par, $v[1]);
1588 1588
             }
1589 1589
             $sql .= implode(' AND ', $tmp).' ';
@@ -1591,38 +1591,38 @@  discard block
 block discarded – undo
1591 1591
         if (count($o)) {
1592 1592
             $sql .= 'ORDER BY ';
1593 1593
             if ($own) {
1594
-                $sql .= $o[2] . ' ' . $dir;
1594
+                $sql .= $o[2].' '.$dir;
1595 1595
             } else {
1596
-                $sql .= 'MAX('.$o[2].') ' . $dir;
1596
+                $sql .= 'MAX('.$o[2].') '.$dir;
1597 1597
             }
1598 1598
         }
1599 1599
         $porder = [];
1600 1600
         $pdir = (count($o) && strpos($o[0], 'DESC') !== false) ? 'DESC' : 'ASC';
1601 1601
         foreach ($this->definition->getPrimaryKey() as $field) {
1602
-            $porder[] = $this->getColumn($field)['name'] . ' ' . $pdir;
1602
+            $porder[] = $this->getColumn($field)['name'].' '.$pdir;
1603 1603
         }
1604 1604
         if (count($porder)) {
1605
-            $sql .= (count($o) ? ', ' : 'ORDER BY ') . implode(', ', $porder) . ' ';
1605
+            $sql .= (count($o) ? ', ' : 'ORDER BY ').implode(', ', $porder).' ';
1606 1606
         }
1607 1607
 
1608 1608
         if ($this->li_of[0]) {
1609 1609
             if ($this->db->driverName() === 'oracle') {
1610
-                if ((int)$this->db->driverOption('version', 0) >= 12) {
1611
-                    $sql .= 'OFFSET ' . $this->li_of[1] . ' ROWS FETCH NEXT ' . $this->li_of[0] . ' ROWS ONLY';
1610
+                if ((int) $this->db->driverOption('version', 0) >= 12) {
1611
+                    $sql .= 'OFFSET '.$this->li_of[1].' ROWS FETCH NEXT '.$this->li_of[0].' ROWS ONLY';
1612 1612
                 } else {
1613
-                    $sql = "SELECT " . implode(', ', $dst) . "
1613
+                    $sql = "SELECT ".implode(', ', $dst)."
1614 1614
                             FROM (
1615 1615
                                 SELECT tbl__.*, rownum rnum__ FROM (
1616
-                                    " . $sql . "
1616
+                                    " . $sql."
1617 1617
                                 ) tbl__
1618
-                                WHERE rownum <= " . ($this->li_of[0] + $this->li_of[1]) . "
1618
+                                WHERE rownum <= " . ($this->li_of[0] + $this->li_of[1])."
1619 1619
                             ) WHERE rnum__ > " . $this->li_of[1];
1620 1620
                 }
1621 1621
             } else {
1622
-                $sql .= 'LIMIT ' . $this->li_of[0] . ' OFFSET ' . $this->li_of[1];
1622
+                $sql .= 'LIMIT '.$this->li_of[0].' OFFSET '.$this->li_of[1];
1623 1623
             }
1624 1624
         }
1625
-        return array_map(function ($v) {
1625
+        return array_map(function($v) {
1626 1626
             if (array_key_exists('orderbyfix___', $v)) {
1627 1627
                 unset($v['orderbyfix___']);
1628 1628
             }
Please login to merge, or discard this patch.
src/schema/Entity.php 1 patch
Spacing   +4 added lines, -4 removed lines patch added patch discarded remove patch
@@ -95,7 +95,7 @@  discard block
 block discarded – undo
95 95
             }
96 96
             $this->cached[$method] = $rslt;
97 97
         } else {
98
-            throw new DBException('Invalid relation name: ' . $method);
98
+            throw new DBException('Invalid relation name: '.$method);
99 99
         }
100 100
         return $this->cached[$method] ?? null;
101 101
     }
@@ -106,14 +106,14 @@  discard block
 block discarded – undo
106 106
     protected function relatedQuery(string $name): TableQueryMapped
107 107
     {
108 108
         if (!array_key_exists($name, $this->relations)) {
109
-            throw new DBException('Invalid relation name: ' . $name);
109
+            throw new DBException('Invalid relation name: '.$name);
110 110
         }
111 111
         return call_user_func_array($this->relations[$name], [$this, true]);
112 112
     }
113 113
     protected function relatedRow(string $name): mixed
114 114
     {
115 115
         if (!array_key_exists($name, $this->relations)) {
116
-            throw new DBException('Invalid relation name: ' . $name);
116
+            throw new DBException('Invalid relation name: '.$name);
117 117
         }
118 118
         return call_user_func_array($this->relations[$name], [$this]);
119 119
     }
@@ -124,7 +124,7 @@  discard block
 block discarded – undo
124 124
     protected function relatedRows(string $name): Collection
125 125
     {
126 126
         if (!array_key_exists($name, $this->relations)) {
127
-            throw new DBException('Invalid relation name: ' . $name);
127
+            throw new DBException('Invalid relation name: '.$name);
128 128
         }
129 129
         return call_user_func_array($this->relations[$name], [$this]);
130 130
     }
Please login to merge, or discard this patch.
src/DBInterface.php 1 patch
Spacing   +2 added lines, -2 removed lines patch added patch discarded remove patch
@@ -118,7 +118,7 @@  discard block
 block discarded – undo
118 118
      * @param class-string<T>|Table|string $table
119 119
      * @return ($table is class-string ? MapperInterface<T> : MapperInterface<Entity>)
120 120
      */
121
-    public function getMapper(Table|string $table): MapperInterface;
121
+    public function getMapper(Table | string $table): MapperInterface;
122 122
     /*
123 123
      * @template T of Entity
124 124
      * @param Table|string $table
@@ -126,7 +126,7 @@  discard block
 block discarded – undo
126 126
      * @param null|class-string<T> $class
127 127
      * @return static
128 128
      */
129
-    public function setMapper(Table|string $table, MapperInterface $mapper, ?string $class = null): static;
129
+    public function setMapper(Table | string $table, MapperInterface $mapper, ?string $class = null): static;
130 130
     public function tableMapped(
131 131
         string $table,
132 132
         bool $findRelations = false,
Please login to merge, or discard this patch.