Rev 52 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
| Rev 52 | Rev 57 | ||
|---|---|---|---|
| Line 1... | Line 1... | ||
| 1 | <?php
|
1 | <?php
|
| 2 | 2 | ||
| 3 | namespace PointedEars\PHPX; |
3 | namespace PointedEars\PHPX; |
| 4 | 4 | ||
| - | 5 | if (!defined('DIRECTORY_SEPARATOR')) |
|
| - | 6 | {
|
|
| - | 7 | define('DIRECTORY_SEPARATOR', '/'); |
|
| - | 8 | }
|
|
| - | 9 | ||
| 5 | function autoload ($class) |
10 | function autoload ($class) |
| 6 | {
|
11 | {
|
| 7 | if (\strpos($class, '..')) |
12 | if (\strpos($class, '..') !== false) |
| 8 | {
|
13 | {
|
| 9 | throw new \InvalidArgumentException( |
14 | throw new \InvalidArgumentException( |
| 10 | 'Refusing to load unsafe class ' . $class); |
15 | "Refusing to load unsafe class '{$class}'"); |
| 11 | }
|
16 | }
|
| 12 | 17 | ||
| 13 | require_once \preg_replace('#\\\#', '/', |
18 | require_once \str_replace('\\', DIRECTORY_SEPARATOR, |
| - | 19 | \preg_replace( |
|
| 14 | \preg_replace('#^' . \preg_quote(__NAMESPACE__) .'#', __DIR__, $class) |
20 | '#^' . \preg_quote(__NAMESPACE__, '#') .'#', |
| - | 21 | __DIR__,
|
|
| - | 22 | $class
|
|
| - | 23 | )
|
|
| 15 | ) . '.php'; |
24 | ) . '.php'; |
| 16 | }
|
25 | }
|
| 17 | 26 | ||
| 18 | \spl_autoload_register(__NAMESPACE__ . '\\autoload'); |
27 | \spl_autoload_register(__NAMESPACE__ . '\\autoload'); |
| 19 | 28 | ||