@@ -125,12 +125,19 @@ class AppRouter implements AppRouterInterface
125
125
*/
126
126
private static bool $ debug_appendNamespaceOnDispatch = true ;
127
127
128
+ /**
129
+ * @var string[]
130
+ */
131
+ public static array $ route_parts ;
132
+
128
133
public function __construct ()
129
134
{
130
135
}
131
136
132
137
public static function init (LoggerInterface $ logger = null , array $ options = [])
133
138
{
139
+ self ::$ route_parts = \preg_split ("/\/+/ " , \preg_replace ("/(\?.*)/ " , "" , trim ($ _SERVER ['REQUEST_URI ' ], '/ ' )));
140
+
134
141
self ::$ logger
135
142
= ($ logger instanceof LoggerInterface)
136
143
? $ logger
@@ -557,7 +564,12 @@ public static function dispatch()
557
564
/**
558
565
* @var Stack $middlewares_before
559
566
*/
560
- $ middlewares_before = $ rule ['middlewares ' ]['before ' ];
567
+ /*$middlewares_before
568
+ = array_key_exists('middlewares', $rule) && array_key_exists('before', $rule['middlewares'])
569
+ ? $rule['middlewares']['before']
570
+ : null;*/
571
+ $ middlewares_before = $ rule ['middlewares ' ]['before ' ] ?? null ;
572
+
561
573
if (!\is_null ($ middlewares_before ) && !$ middlewares_before ->isEmpty ()) {
562
574
do {
563
575
$ middleware_handler = $ middlewares_before ->pop ();
@@ -579,7 +591,12 @@ public static function dispatch()
579
591
/**
580
592
* @var Stack $middlewares_after
581
593
*/
582
- $ middlewares_after = $ rule ['middlewares ' ]['after ' ];
594
+ /*$middlewares_after
595
+ = array_key_exists('middlewares', $rule) && array_key_exists('after', $rule['middlewares'])
596
+ ? $rule['middlewares']['after']
597
+ : null;*/
598
+ $ middlewares_after = $ rule ['middlewares ' ]['after ' ] ?? null ;
599
+
583
600
if (!\is_null ($ middlewares_after ) && !$ middlewares_after ->isEmpty ()) {
584
601
do {
585
602
$ middleware_handler = $ middlewares_after ->pop ();
@@ -873,11 +890,11 @@ private static function getClosureInternalName($closure): string
873
890
// создаем статичную функцию и сразу вызываем
874
891
(static function ($ r ) {
875
892
return
876
- array_map (
893
+ \ array_map (
877
894
// обработчик
878
895
static function ($ v )
879
896
{
880
- return is_object ($ v ) ? $ v ->name : $ v ;
897
+ return \ is_object ($ v ) ? $ v ->name : $ v ;
881
898
},
882
899
// входной массив
883
900
\array_merge (
0 commit comments