Структура каталогов SplClassLoader
Я новичок в пространствах имен, и я предполагаю автозагрузку в методе SplClassLoader. Я пытался найти много уроков, но мне не повезло. Возможно, вы, ребята, можете помочь мне в этом?
Структура каталогов
- Oram
- Lib
- Classes
Test.php
- index.php
- SplClassLoader.php
test.php
<?php
namespace Oram\Lib\Classes;
class Test
{
function __construct()
{
echo "Test Class loaded";
}
}
index.php
<?php
require_once('SplClassLoader.php');
$loader = new SplClassLoader('Lib', 'Oram\Lib');
$loader->register();
use Oram\Lib\Classes\Test;
$test = new Test();
Это все внутри localhost/website/ too btw, так как я запускаю его на WAMP.
Fatal error: Class 'Oram\Lib\Classes\Test' not found in C:\Program Files\wamp\www\website\index.php on line 10
Любой совет или если бы кто-то мог указать мне на некоторые ресурсы для чтения, чтобы обдумать это, было бы здорово.
Спасибо
1 ответ
Редактировать: у меня есть это! Я думаю, что вы должны изменить обратную косую черту (\) на косую черту (/).
<?php
require_once('SplClassLoader.php');
$loader = new SplClassLoader('Lib', 'Oram/Lib');
$loader->register();
use Oram\Lib\Classes\Test;
$test = new Test();
?>
Take a look on [this][1].
Попробуй это. Я добавил \ перед вашим пространством имен. Это может быть ответом:
$loader = new SplClassLoader('Lib', '\Oram\Lib');