Selaa lähdekoodia

Accepting String as callback

ahwelp 6 vuotta sitten
vanhempi
sitoutus
2d6227824c
1 muutettua tiedostoa jossa 8 lisäystä ja 5 poistoa
  1. 8 5
      src/BBRouter/Route.php

+ 8 - 5
src/BBRouter/Route.php

@@ -146,7 +146,13 @@ class Route{
         }
         
         foreach ($this->_callback as $callback){
-            call_user_func_array($callback, $this->_params);
+            if(is_string($callback)){
+                $segments = explode('@', $callback);
+                $class = new $segments[0]();
+                $class->{$segments[1]}(...array_values($this->_params));
+            }else{
+                call_user_func_array($callback, $this->_params);
+            }
         }
 
         foreach ($this->_after as $after){
@@ -255,7 +261,4 @@ class Route{
 
         return false;
     }
-}
-
-
-
+}