public function ___autoload($className)
{
if (isset($this->_classes[$className])) {
if (!is_file($this->_classes[$className])) {
trigger_error(strtr('load `:class` class failed: `:file` is not exists.', [':class' => $className, 'file' => $this->_classes[$className]]), E_USER_ERROR);
}
return $this->___requireFile($this->_classes[$className]);
}
/** @noinspection LoopWhichDoesNotLoopInspection */
foreach ($this->_namespaces as $namespace => $path) {
if (strpos($className, $namespace) !== 0) {
continue;
}
$file = $path . str_replace('\\', '/', substr($className, strlen($namespace))) . '.php';
if (is_file($file)) {
return $this->___requireFile($file);
}
}
return false;
}