From d6642a7f7ba52ece6c6ae108cc1d858e037f65cb Mon Sep 17 00:00:00 2001 From: sessingo Date: Fri, 7 Apr 2023 15:30:24 +0200 Subject: [PATCH] Changed behavior of router to always exspect returned output to be string. --- src/Pecee/SimpleRouter/ClassLoader/ClassLoader.php | 12 ++++++------ src/Pecee/SimpleRouter/Router.php | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Pecee/SimpleRouter/ClassLoader/ClassLoader.php b/src/Pecee/SimpleRouter/ClassLoader/ClassLoader.php index 77c9978..82e18ee 100644 --- a/src/Pecee/SimpleRouter/ClassLoader/ClassLoader.php +++ b/src/Pecee/SimpleRouter/ClassLoader/ClassLoader.php @@ -27,11 +27,11 @@ class ClassLoader implements IClassLoader * @param object $class * @param string $method * @param array $parameters - * @return mixed + * @return string */ - public function loadClassMethod($class, string $method, array $parameters) + public function loadClassMethod($class, string $method, array $parameters): string { - return call_user_func_array([$class, $method], array_values($parameters)); + return (string)call_user_func_array([$class, $method], array_values($parameters)); } /** @@ -39,11 +39,11 @@ class ClassLoader implements IClassLoader * * @param Callable $closure * @param array $parameters - * @return mixed + * @return string */ - public function loadClosure(Callable $closure, array $parameters) + public function loadClosure(callable $closure, array $parameters): string { - return call_user_func_array($closure, array_values($parameters)); + return (string)call_user_func_array($closure, array_values($parameters)); } } \ No newline at end of file diff --git a/src/Pecee/SimpleRouter/Router.php b/src/Pecee/SimpleRouter/Router.php index c00c8d5..ff12732 100644 --- a/src/Pecee/SimpleRouter/Router.php +++ b/src/Pecee/SimpleRouter/Router.php @@ -427,7 +427,7 @@ class Router $routeOutput = $route->renderRoute($this->request, $this); if ($this->renderMultipleRoutes === true) { - if ($routeOutput !== null) { + if ($routeOutput !== '') { return $routeOutput; }