@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | // +---------------------------------------------------------------------- |
9 | 9 | // | Author: liu21st <[email protected]> |
10 | 10 | // +---------------------------------------------------------------------- |
11 | -declare (strict_types = 1); |
|
11 | +declare(strict_types=1); |
|
12 | 12 | |
13 | 13 | namespace think; |
14 | 14 | |
@@ -79,7 +79,7 @@ discard block |
||
79 | 79 | |
80 | 80 | if ($force || !isset($this->instance[$name])) { |
81 | 81 | if (!isset($this->config['stores'][$name])) { |
82 | - throw new InvalidArgumentException('Undefined cache config:' . $name); |
|
82 | + throw new InvalidArgumentException('Undefined cache config:'.$name); |
|
83 | 83 | } |
84 | 84 | |
85 | 85 | $options = $this->config['stores'][$name]; |
@@ -29,14 +29,14 @@ discard block |
||
29 | 29 | { |
30 | 30 | $app = $input->getArgument('app'); |
31 | 31 | |
32 | - if (empty($app) && !is_dir($this->app->getBasePath() . 'controller')) { |
|
32 | + if (empty($app) && !is_dir($this->app->getBasePath().'controller')) { |
|
33 | 33 | $output->writeln('<error>Miss app name!</error>'); |
34 | 34 | return false; |
35 | 35 | } |
36 | 36 | |
37 | - $path = $this->app->getRootPath() . 'runtime' . DIRECTORY_SEPARATOR . ($app ? $app . DIRECTORY_SEPARATOR : ''); |
|
37 | + $path = $this->app->getRootPath().'runtime'.DIRECTORY_SEPARATOR.($app ? $app.DIRECTORY_SEPARATOR : ''); |
|
38 | 38 | |
39 | - $filename = $path . 'route.php'; |
|
39 | + $filename = $path.'route.php'; |
|
40 | 40 | if (is_file($filename)) { |
41 | 41 | unlink($filename); |
42 | 42 | } |
@@ -51,21 +51,21 @@ discard block |
||
51 | 51 | $this->app->route->lazy(false); |
52 | 52 | |
53 | 53 | // 路由检测 |
54 | - $path = $this->app->getRootPath() . 'route' . DIRECTORY_SEPARATOR . ($app ? $app . DIRECTORY_SEPARATOR : ''); |
|
54 | + $path = $this->app->getRootPath().'route'.DIRECTORY_SEPARATOR.($app ? $app.DIRECTORY_SEPARATOR : ''); |
|
55 | 55 | |
56 | 56 | $files = is_dir($path) ? scandir($path) : []; |
57 | 57 | |
58 | 58 | foreach ($files as $file) { |
59 | 59 | if (strpos($file, '.php')) { |
60 | - include $path . $file; |
|
60 | + include $path.$file; |
|
61 | 61 | } |
62 | 62 | } |
63 | 63 | |
64 | 64 | //触发路由载入完成事件 |
65 | 65 | $this->app->event->trigger(RouteLoaded::class); |
66 | 66 | |
67 | - $content = '<?php ' . PHP_EOL . 'return '; |
|
68 | - $content .= '\think\App::unserialize(\'' . \think\App::serialize($this->app->route->getName()) . '\');'; |
|
67 | + $content = '<?php '.PHP_EOL.'return '; |
|
68 | + $content .= '\think\App::unserialize(\''.\think\App::serialize($this->app->route->getName()).'\');'; |
|
69 | 69 | return $content; |
70 | 70 | } |
71 | 71 |
@@ -42,15 +42,15 @@ discard block |
||
42 | 42 | { |
43 | 43 | $app = $input->getArgument('app'); |
44 | 44 | |
45 | - if (empty($app) && !is_dir($this->app->getBasePath() . 'controller')) { |
|
45 | + if (empty($app) && !is_dir($this->app->getBasePath().'controller')) { |
|
46 | 46 | $output->writeln('<error>Miss app name!</error>'); |
47 | 47 | return false; |
48 | 48 | } |
49 | 49 | |
50 | 50 | if ($app) { |
51 | - $filename = $this->app->getRootPath() . 'runtime' . DIRECTORY_SEPARATOR . $app . DIRECTORY_SEPARATOR . 'route_list_' . $app . '.php'; |
|
51 | + $filename = $this->app->getRootPath().'runtime'.DIRECTORY_SEPARATOR.$app.DIRECTORY_SEPARATOR.'route_list_'.$app.'.php'; |
|
52 | 52 | } else { |
53 | - $filename = $this->app->getRootPath() . 'runtime' . DIRECTORY_SEPARATOR . 'route_list.php'; |
|
53 | + $filename = $this->app->getRootPath().'runtime'.DIRECTORY_SEPARATOR.'route_list.php'; |
|
54 | 54 | } |
55 | 55 | |
56 | 56 | if (is_file($filename)) { |
@@ -60,7 +60,7 @@ discard block |
||
60 | 60 | } |
61 | 61 | |
62 | 62 | $content = $this->getRouteList($app); |
63 | - file_put_contents($filename, 'Route List' . PHP_EOL . $content); |
|
63 | + file_put_contents($filename, 'Route List'.PHP_EOL.$content); |
|
64 | 64 | } |
65 | 65 | |
66 | 66 | protected function getRouteList(string $app = null): string |
@@ -69,16 +69,16 @@ discard block |
||
69 | 69 | $this->app->route->clear(); |
70 | 70 | |
71 | 71 | if ($app) { |
72 | - $path = $this->app->getRootPath() . 'route' . DIRECTORY_SEPARATOR . $app . DIRECTORY_SEPARATOR; |
|
72 | + $path = $this->app->getRootPath().'route'.DIRECTORY_SEPARATOR.$app.DIRECTORY_SEPARATOR; |
|
73 | 73 | } else { |
74 | - $path = $this->app->getRootPath() . 'route' . DIRECTORY_SEPARATOR; |
|
74 | + $path = $this->app->getRootPath().'route'.DIRECTORY_SEPARATOR; |
|
75 | 75 | } |
76 | 76 | |
77 | 77 | $files = is_dir($path) ? scandir($path) : []; |
78 | 78 | |
79 | 79 | foreach ($files as $file) { |
80 | 80 | if (strpos($file, '.php')) { |
81 | - include $path . $file; |
|
81 | + include $path.$file; |
|
82 | 82 | } |
83 | 83 | } |
84 | 84 | |
@@ -117,7 +117,7 @@ discard block |
||
117 | 117 | $sort = $this->sortBy[$sort]; |
118 | 118 | } |
119 | 119 | |
120 | - uasort($rows, function ($a, $b) use ($sort) { |
|
120 | + uasort($rows, function($a, $b) use ($sort) { |
|
121 | 121 | $itemA = $a[$sort] ?? null; |
122 | 122 | $itemB = $b[$sort] ?? null; |
123 | 123 |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | // +---------------------------------------------------------------------- |
9 | 9 | // | Author: yunwuxin <[email protected]> |
10 | 10 | // +---------------------------------------------------------------------- |
11 | -declare (strict_types = 1); |
|
11 | +declare(strict_types=1); |
|
12 | 12 | |
13 | 13 | namespace think; |
14 | 14 | |
@@ -36,7 +36,7 @@ discard block |
||
36 | 36 | */ |
37 | 37 | protected function loadRoutesFrom($path) |
38 | 38 | { |
39 | - $this->registerRoutes(function () use ($path) { |
|
39 | + $this->registerRoutes(function() use ($path) { |
|
40 | 40 | include $path; |
41 | 41 | }); |
42 | 42 | } |
@@ -59,7 +59,7 @@ discard block |
||
59 | 59 | { |
60 | 60 | $commands = is_array($commands) ? $commands : func_get_args(); |
61 | 61 | |
62 | - Console::starting(function (Console $console) use ($commands) { |
|
62 | + Console::starting(function(Console $console) use ($commands) { |
|
63 | 63 | $console->addCommands($commands); |
64 | 64 | }); |
65 | 65 | } |
@@ -159,7 +159,7 @@ discard block |
||
159 | 159 | // 关联查询 |
160 | 160 | $pk = $this->parent->getPk(); |
161 | 161 | |
162 | - $condition = ['pivot.' . $localKey, '=', $this->parent->$pk]; |
|
162 | + $condition = ['pivot.'.$localKey, '=', $this->parent->$pk]; |
|
163 | 163 | |
164 | 164 | return $this->belongsToManyQuery($foreignKey, $localKey, [$condition]); |
165 | 165 | } |
@@ -294,7 +294,7 @@ discard block |
||
294 | 294 | */ |
295 | 295 | public function wherePivot($field, $op = null, $condition = null) |
296 | 296 | { |
297 | - $this->query->where('pivot.' . $field, $op, $condition); |
|
297 | + $this->query->where('pivot.'.$field, $op, $condition); |
|
298 | 298 | return $this; |
299 | 299 | } |
300 | 300 | |
@@ -323,7 +323,7 @@ discard block |
||
323 | 323 | if (!empty($range)) { |
324 | 324 | // 查询关联数据 |
325 | 325 | $data = $this->eagerlyManyToMany([ |
326 | - ['pivot.' . $localKey, 'in', $range], |
|
326 | + ['pivot.'.$localKey, 'in', $range], |
|
327 | 327 | ], $relation, $subRelation, $closure); |
328 | 328 | |
329 | 329 | // 关联属性名 |
@@ -357,7 +357,7 @@ discard block |
||
357 | 357 | $pk = $result->$pk; |
358 | 358 | // 查询管理数据 |
359 | 359 | $data = $this->eagerlyManyToMany([ |
360 | - ['pivot.' . $this->localKey, '=', $pk], |
|
360 | + ['pivot.'.$this->localKey, '=', $pk], |
|
361 | 361 | ], $relation, $subRelation, $closure); |
362 | 362 | |
363 | 363 | // 关联数据封装 |
@@ -394,7 +394,7 @@ discard block |
||
394 | 394 | } |
395 | 395 | |
396 | 396 | return $this->belongsToManyQuery($this->foreignKey, $this->localKey, [ |
397 | - ['pivot.' . $this->localKey, '=', $pk], |
|
397 | + ['pivot.'.$this->localKey, '=', $pk], |
|
398 | 398 | ])->$aggregate($field); |
399 | 399 | } |
400 | 400 | |
@@ -415,7 +415,7 @@ discard block |
||
415 | 415 | |
416 | 416 | return $this->belongsToManyQuery($this->foreignKey, $this->localKey, [ |
417 | 417 | [ |
418 | - 'pivot.' . $this->localKey, 'exp', new Raw('=' . $this->parent->db(false)->getTable() . '.' . $this->parent->getPk()), |
|
418 | + 'pivot.'.$this->localKey, 'exp', new Raw('='.$this->parent->db(false)->getTable().'.'.$this->parent->getPk()), |
|
419 | 419 | ], |
420 | 420 | ])->fetchSql()->$aggregate($field); |
421 | 421 | } |
@@ -493,7 +493,7 @@ discard block |
||
493 | 493 | |
494 | 494 | if (empty($this->baseQuery)) { |
495 | 495 | $relationFk = $this->query->getPk(); |
496 | - $query->join([$table => 'pivot'], 'pivot.' . $foreignKey . '=' . $tableName . '.' . $relationFk) |
|
496 | + $query->join([$table => 'pivot'], 'pivot.'.$foreignKey.'='.$tableName.'.'.$relationFk) |
|
497 | 497 | ->where($condition); |
498 | 498 | } |
499 | 499 |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | // +---------------------------------------------------------------------- |
9 | 9 | // | Author: liu21st <[email protected]> |
10 | 10 | // +---------------------------------------------------------------------- |
11 | -declare (strict_types = 1); |
|
11 | +declare(strict_types=1); |
|
12 | 12 | |
13 | 13 | namespace think\route; |
14 | 14 | |
@@ -109,7 +109,7 @@ discard block |
||
109 | 109 | } |
110 | 110 | |
111 | 111 | if ($this->parent && $this->parent->getFullName()) { |
112 | - $this->fullName = $this->parent->getFullName() . ($this->name ? '/' . $this->name : ''); |
|
112 | + $this->fullName = $this->parent->getFullName().($this->name ? '/'.$this->name : ''); |
|
113 | 113 | } else { |
114 | 114 | $this->fullName = $this->name; |
115 | 115 | } |
@@ -304,13 +304,13 @@ discard block |
||
304 | 304 | protected function checkMergeRuleRegex(Request $request, array &$rules, string $url, bool $completeMatch) |
305 | 305 | { |
306 | 306 | $depr = $this->router->config('pathinfo_depr'); |
307 | - $url = $depr . str_replace('|', $depr, $url); |
|
307 | + $url = $depr.str_replace('|', $depr, $url); |
|
308 | 308 | $regex = []; |
309 | 309 | $items = []; |
310 | 310 | |
311 | 311 | foreach ($rules as $key => $item) { |
312 | 312 | if ($item instanceof RuleItem) { |
313 | - $rule = $depr . str_replace('/', $depr, $item->getRule()); |
|
313 | + $rule = $depr.str_replace('/', $depr, $item->getRule()); |
|
314 | 314 | if ($depr == $rule && $depr != $url) { |
315 | 315 | unset($rules[$key]); |
316 | 316 | continue; |
@@ -327,21 +327,21 @@ discard block |
||
327 | 327 | continue; |
328 | 328 | } |
329 | 329 | |
330 | - $slash = preg_quote('/-' . $depr, '/'); |
|
330 | + $slash = preg_quote('/-'.$depr, '/'); |
|
331 | 331 | |
332 | - if ($matchRule = preg_split('/[' . $slash . ']<\w+\??>/', $rule, 2)) { |
|
332 | + if ($matchRule = preg_split('/['.$slash.']<\w+\??>/', $rule, 2)) { |
|
333 | 333 | if ($matchRule[0] && 0 !== strncasecmp($rule, $url, strlen($matchRule[0]))) { |
334 | 334 | unset($rules[$key]); |
335 | 335 | continue; |
336 | 336 | } |
337 | 337 | } |
338 | 338 | |
339 | - if (preg_match_all('/[' . $slash . ']?<?\w+\??>?/', $rule, $matches)) { |
|
339 | + if (preg_match_all('/['.$slash.']?<?\w+\??>?/', $rule, $matches)) { |
|
340 | 340 | unset($rules[$key]); |
341 | 341 | $pattern = array_merge($this->getPattern(), $item->getPattern()); |
342 | 342 | $option = array_merge($this->getOption(), $item->getOption()); |
343 | 343 | |
344 | - $regex[$key] = $this->buildRuleRegex($rule, $matches[0], $pattern, $option, $complete, '_THINK_' . $key); |
|
344 | + $regex[$key] = $this->buildRuleRegex($rule, $matches[0], $pattern, $option, $complete, '_THINK_'.$key); |
|
345 | 345 | $items[$key] = $item; |
346 | 346 | } |
347 | 347 | } |
@@ -352,7 +352,7 @@ discard block |
||
352 | 352 | } |
353 | 353 | |
354 | 354 | try { |
355 | - $result = preg_match('/^(?:' . implode('|', $regex) . ')/u', $url, $match); |
|
355 | + $result = preg_match('/^(?:'.implode('|', $regex).')/u', $url, $match); |
|
356 | 356 | } catch (\Exception $e) { |
357 | 357 | throw new Exception('route pattern error'); |
358 | 358 | } |
@@ -369,7 +369,7 @@ discard block |
||
369 | 369 | |
370 | 370 | if (!isset($pos)) { |
371 | 371 | foreach ($regex as $key => $item) { |
372 | - if (0 === strpos(str_replace(['\/', '\-', '\\' . $depr], ['/', '-', $depr], $item), $match[0])) { |
|
372 | + if (0 === strpos(str_replace(['\/', '\-', '\\'.$depr], ['/', '-', $depr], $item), $match[0])) { |
|
373 | 373 | $pos = $key; |
374 | 374 | break; |
375 | 375 | } |
@@ -398,7 +398,7 @@ discard block |
||
398 | 398 | * @access public |
399 | 399 | * @return RuleItem|null |
400 | 400 | */ |
401 | - public function getMissRule(): ? RuleItem |
|
401 | + public function getMissRule(): ? RuleItem |
|
402 | 402 | { |
403 | 403 | return $this->miss; |
404 | 404 | } |
@@ -484,7 +484,7 @@ discard block |
||
484 | 484 | public function prefix(string $prefix) |
485 | 485 | { |
486 | 486 | if ($this->parent && $this->parent->getOption('prefix')) { |
487 | - $prefix = $this->parent->getOption('prefix') . $prefix; |
|
487 | + $prefix = $this->parent->getOption('prefix').$prefix; |
|
488 | 488 | } |
489 | 489 | |
490 | 490 | return $this->setOption('prefix', $prefix); |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | // +---------------------------------------------------------------------- |
9 | 9 | // | Author: liu21st <[email protected]> |
10 | 10 | // +---------------------------------------------------------------------- |
11 | -declare (strict_types = 1); |
|
11 | +declare(strict_types=1); |
|
12 | 12 | |
13 | 13 | namespace think\route; |
14 | 14 | |
@@ -109,10 +109,10 @@ discard block |
||
109 | 109 | $item = []; |
110 | 110 | |
111 | 111 | foreach ($array as $val) { |
112 | - $item[] = $val . '/<' . ($option['var'][$val] ?? $val . '_id') . '>'; |
|
112 | + $item[] = $val.'/<'.($option['var'][$val] ?? $val.'_id').'>'; |
|
113 | 113 | } |
114 | 114 | |
115 | - $rule = implode('/', $item) . '/' . $last; |
|
115 | + $rule = implode('/', $item).'/'.$last; |
|
116 | 116 | } |
117 | 117 | |
118 | 118 | $prefix = substr($rule, strlen($this->name) + 1); |
@@ -125,12 +125,12 @@ discard block |
||
125 | 125 | } |
126 | 126 | |
127 | 127 | if (isset($last) && strpos($val[1], '<id>') && isset($option['var'][$last])) { |
128 | - $val[1] = str_replace('<id>', '<' . $option['var'][$last] . '>', $val[1]); |
|
128 | + $val[1] = str_replace('<id>', '<'.$option['var'][$last].'>', $val[1]); |
|
129 | 129 | } elseif (strpos($val[1], '<id>') && isset($option['var'][$rule])) { |
130 | - $val[1] = str_replace('<id>', '<' . $option['var'][$rule] . '>', $val[1]); |
|
130 | + $val[1] = str_replace('<id>', '<'.$option['var'][$rule].'>', $val[1]); |
|
131 | 131 | } |
132 | 132 | |
133 | - $ruleItem = $this->addRule(trim($prefix . $val[1], '/'), $this->route . '/' . $val[2], $val[0]); |
|
133 | + $ruleItem = $this->addRule(trim($prefix.$val[1], '/'), $this->route.'/'.$val[2], $val[0]); |
|
134 | 134 | |
135 | 135 | foreach (['model', 'validate', 'middleware'] as $name) { |
136 | 136 | if (isset($this->$name[$key])) { |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | // +---------------------------------------------------------------------- |
9 | 9 | // | Author: liu21st <[email protected]> |
10 | 10 | // +---------------------------------------------------------------------- |
11 | -declare (strict_types = 1); |
|
11 | +declare(strict_types=1); |
|
12 | 12 | |
13 | 13 | namespace think; |
14 | 14 | |
@@ -310,12 +310,12 @@ discard block |
||
310 | 310 | $query = $this->queryInstance; |
311 | 311 | } else { |
312 | 312 | $query = $this->db->connect($this->connection) |
313 | - ->name($this->name . $this->suffix) |
|
313 | + ->name($this->name.$this->suffix) |
|
314 | 314 | ->pk($this->pk); |
315 | 315 | } |
316 | 316 | |
317 | 317 | if (!empty($this->table)) { |
318 | - $query->table($this->table . $this->suffix); |
|
318 | + $query->table($this->table.$this->suffix); |
|
319 | 319 | } |
320 | 320 | |
321 | 321 | $query->model($this) |
@@ -515,7 +515,7 @@ discard block |
||
515 | 515 | $this->field = array_keys(array_merge($this->schema, $this->jsonType)); |
516 | 516 | } else { |
517 | 517 | $query = $this->db(); |
518 | - $table = $this->table ? $this->table . $this->suffix : $query->getTable(); |
|
518 | + $table = $this->table ? $this->table.$this->suffix : $query->getTable(); |
|
519 | 519 | |
520 | 520 | $this->field = $query->getConnection()->getTableFields($table); |
521 | 521 | } |
@@ -8,7 +8,7 @@ discard block |
||
8 | 8 | // +---------------------------------------------------------------------- |
9 | 9 | // | Author: liu21st <[email protected]> |
10 | 10 | // +---------------------------------------------------------------------- |
11 | -declare (strict_types = 1); |
|
11 | +declare(strict_types=1); |
|
12 | 12 | |
13 | 13 | namespace think\db\concern; |
14 | 14 | |
@@ -64,7 +64,7 @@ discard block |
||
64 | 64 | $op = is_array($range) ? 'between' : '>='; |
65 | 65 | } |
66 | 66 | |
67 | - return $this->parseWhereExp($logic, $field, strtolower($op) . ' time', $range, [], true); |
|
67 | + return $this->parseWhereExp($logic, $field, strtolower($op).' time', $range, [], true); |
|
68 | 68 | } |
69 | 69 | |
70 | 70 | /** |
@@ -80,7 +80,7 @@ discard block |
||
80 | 80 | public function whereTimeInterval(string $field, string $start, string $interval = 'day', int $step = 1, string $logic = 'AND') |
81 | 81 | { |
82 | 82 | $startTime = strtotime($start); |
83 | - $endTime = strtotime(($step > 0 ? '+' : '-') . abs($step) . ' ' . $interval . (abs($step) > 1 ? 's' : ''), $startTime); |
|
83 | + $endTime = strtotime(($step > 0 ? '+' : '-').abs($step).' '.$interval.(abs($step) > 1 ? 's' : ''), $startTime); |
|
84 | 84 | |
85 | 85 | return $this->whereTime($field, 'between', $step > 0 ? [$startTime, $endTime] : [$endTime, $startTime], $logic); |
86 | 86 | } |
@@ -136,7 +136,7 @@ discard block |
||
136 | 136 | $year = date('Y', strtotime($year)); |
137 | 137 | } |
138 | 138 | |
139 | - return $this->whereTimeInterval($field, $year . '-1-1', 'year', $step, $logic); |
|
139 | + return $this->whereTimeInterval($field, $year.'-1-1', 'year', $step, $logic); |
|
140 | 140 | } |
141 | 141 | |
142 | 142 | /** |