Fix: Initialize Router $params as empty array #93
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Issue
In v2.0.96,
Router::callHandler()has a strict type hint requiringarray $inlineValues, but the$paramsproperty is never initialized, defaulting tonull.This causes a fatal TypeError when handling routes without URL parameters:
Affected Routes
All routes without URL parameters fail:
GET /GET /loginGET /dashboardRoot Cause
File:
Tina4/Routing/Router.php:27Later called with strict type checking:
Solution
Initialize
$paramsas an empty array:Testing
Tested with:
All working as expected after fix.
Version Context
call_user_func_array()(no type checking)callHandler()(strict types)This is a regression introduced in v2.0.96.
Backward Compatibility
✅ This fix is 100% backward compatible. Empty array is valid for all use cases where null was previously used.