Layer: Core · Source: lib/core/RequestPath.php:28 (lines 28–193)
class RequestPath
Improved version with: \- Replaced deprecated strtok() with parse_url() \- Enhanced path sanitization \- Better parameter handling \- Type safety improvements
| Tag | Value |
|---|---|
@category | Core Class |
@license | MIT |
@version | 1.1 |
@since | Since Release 1.0 |
No parent, interface or trait. This is a root type.
| Visibility | Name | Value | Line |
|---|---|---|---|
private | MAX_PARAMS | 4; | 31 |
| Visibility | Type | Name | Default | Line |
|---|---|---|---|---|
private | array | $parts | [] | 30 |
| Visibility | Method | Summary | Line |
|---|---|---|---|
| public | __construct() | (undocumented) | 33 |
| private | getSanitizedPath() | Get and sanitize the request path | 43 |
| private | splitPath() | Split path into components | 60 |
| private | sanitizePath() | Sanitize path components | 69 |
| private | parsePathBits() | Parse path segments into named and sequential parameters | 83 |
| private | parseKeyValuePairs() | Parse remaining segments as key-value pairs | 118 |
| private | sanitizeValue() | Sanitize individual values | 138 |
| public | setParameters() | Sets extracted named route parameters. | 150 |
| public | __get() | Magic getter with null coalescing | 165 |
| public | __set() | Magic setter with sanitization | 173 |
| public | __isset() | Check if parameter exists | 181 |
| public | getAll() | Get all parameters | 189 |
public function __construct()
lines 33–38 (6)
Takes no parameters.
private function getSanitizedPath(): string
lines 43–55 (13)
Get and sanitize the request path
Takes no parameters.
Returns: string
private function splitPath(string $path): array
lines 60–64 (5)
Split path into components
| Parameter | Type | Default | Description |
|---|---|---|---|
$path | string | required | none |
Returns: array
private function sanitizePath(string $path): string
lines 69–78 (10)
Sanitize path components
| Parameter | Type | Default | Description |
|---|---|---|---|
$path | string | required | none |
Returns: string
private function parsePathBits(array $bits): array
lines 83–113 (31)
Parse path segments into named and sequential parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
$bits | array | required | none |
Returns: array
private function parseKeyValuePairs(array $bits, array &$parsed): void
lines 118–133 (16)
Parse remaining segments as key-value pairs
| Parameter | Type | Default | Description |
|---|---|---|---|
$bits | array | required | none |
$parsed (by reference) | array | required | none |
Returns: void
private function sanitizeValue(string $value): string
lines 138–141 (4)
Sanitize individual values
| Parameter | Type | Default | Description |
|---|---|---|---|
$value | string | required | none |
Returns: string
public function setParameters(array $params): void
lines 150–160 (11)
Sets extracted named route parameters.
\* Uses the magic __set method for proper sanitization and storage. \* @param array $params The array of matches from Dispatcher's preg_match.
| Parameter | Type | Default | Description |
|---|---|---|---|
$params | array | required | none |
Returns: void
public function __get(string $key)
lines 165–168 (4)
Magic getter with null coalescing
| Parameter | Type | Default | Description |
|---|---|---|---|
$key | string | required | none |
Returns: (none declared)
public function __set(string $key, $value): void
lines 173–176 (4)
Magic setter with sanitization
| Parameter | Type | Default | Description |
|---|---|---|---|
$key | string | required | none |
$value | (untyped) | required | none |
Returns: void
public function __isset(string $key): bool
lines 181–184 (4)
Check if parameter exists
| Parameter | Type | Default | Description |
|---|---|---|---|
$key | string | required | none |
Returns: bool
public function getAll(): array
lines 189–192 (4)
Get all parameters
Takes no parameters.
Returns: array
This page is generated from source by 'tools/gendoc'. Edits will be overwritten.