1 Star 0 Fork 0

高跃/php-private-framework

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
Loader.php 1.16 KB
一键复制 编辑 原始数据 按行查看 历史
高跃 提交于 2019-10-25 14:42 . ###
<?php
namespace api;
class Loader
{
/* 路径映射 */
public static $vendorMap = array(
'base' => __DIR__ . DIRECTORY_SEPARATOR,
'service' => __DIR__ . DIRECTORY_SEPARATOR . 'service'
);
/**
* 自动加载器
*/
public static function autoload($class)
{
$file = self::findFile($class);
if (file_exists($file)) {
self::includeFile($file);
}
}
/**
* 解析文件路径
*/
private static function findFile($class)
{
$vendor = substr($class, 0, strpos($class, '\\')); // 顶级命名空间
if (!empty($vendor)) {
$vendorDir = self::$vendorMap[$vendor]; // 文件基目录
} else {
$vendorDir = self::$vendorMap['base'];
}
$filePath = substr($class, strlen($vendor)) . '.php'; // 文件相对路径
return strtr($vendorDir . $filePath, '\\', DIRECTORY_SEPARATOR); // 文件标准路径
}
/**
* 引入文件
*/
private static function includeFile($file)
{
if (is_file($file)) {
require_once($file);
}
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
PHP
1
https://gitee.com/nmggy/php-private-framework.git
git@gitee.com:nmggy/php-private-framework.git
nmggy
php-private-framework
php-private-framework
master

搜索帮助