Add simple PSR-4 autoloader
parent
6c22684b2f
commit
024a140609
|
@ -0,0 +1,27 @@
|
|||
<?php
|
||||
namespace Mcp;
|
||||
|
||||
class Autoloader {
|
||||
|
||||
private string $appPath;
|
||||
private string $libPath;
|
||||
|
||||
public function __construct($basedir)
|
||||
{
|
||||
$this->appPath = $basedir.DIRECTORY_SEPARATOR.'app'.DIRECTORY_SEPARATOR;
|
||||
$this->libPath = $basedir.DIRECTORY_SEPARATOR.'lib'.DIRECTORY_SEPARATOR;
|
||||
}
|
||||
|
||||
public function load($className) {
|
||||
$parts = explode('\\', $className);
|
||||
$len = count($parts);
|
||||
|
||||
$res = $parts[0] === 'Mcp' ? $this->appPath : $this->libPath;
|
||||
for ($i = 1; $i < $len - 1; $i++) {
|
||||
$res = $res.strtolower($parts[$i]).DIRECTORY_SEPARATOR;
|
||||
}
|
||||
|
||||
require $res.$parts[$len - 1].'.php';
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in New Issue