1、目录结构

+ Anfora

| + Autoload

| - ClassLoader.php

| - Autoload.php

- autoload.php

2、注册类加载器

src/Anfora/Autoload.php

class Anfora_Autoload
{
private static $loader; public static function loadClassLoader($class)
{
$class_name = trim($class, '\\');
if ('Anfora\Autoload\ClassLoader' === $class_name) {
require_once __DIR__ . '/Autoload/ClassLoader.php';
}
} public static function getLoader()
{
if (null !== self::$loader) {
return self::$loader;
} $autoload_function = array('Anfora_Autoload', 'loadClassLoader');
spl_autoload_register($autoload_function, true, true);
self::$loader = $loader = new \Anfora\Autoload\ClassLoader();
spl_autoload_unregister($autoload_function);
$loader->register(true);
return $loader;
}
}

getLoader()

注册类加载器函数并注销

注册全局类加载

loadClassLoader()

引入全局类加载

3、全局类装载

src/Anfora/Autoload/ClassLoader.php

 class ClassLoader
{
/* 注册与注销 */ public function loadClass($class)
{
/* 获取文件路径、包含文件,调试信息 */
} public function findFile($class)
{
/* 匹配命名空间规则,返回文件路径 */
}
} function includeFile($file) {
return $include = @include_once $file;
}

Anfora 自动装载类的更多相关文章

  1. php类自动装载、链式操作、魔术方法

    1.自动装载实例 目录下有3个文件:index.php load.php tests文件夹 tests文件夹里有 test1.php <?php namespace Tests; class T ...

  2. spring Bean类自动装载实现

    先贴spring的开发文档,有助于大家学习http://shouce.jb51.net/spring/beans.html#beans-factory-class 一直想研究一下spring bean ...

  3. Archlinux 的U盘自动装载(一)udisks

    为什么要用 udisks + udevil 方式自动装载 U 盘? Gnome 和 KDE 下的很多文件管理器都有自己的U盘装载方案.但我的应用环境为: Archlinux,xorg,Openbox, ...

  4. spring 组件自动装载示例(@ComponentScan,@Component,@Scope)

    今天学习spring的bean组件装载功能,个人不太喜欢xml文件一个个配置bean的方式,所以主要学习测试注解式的自动装载方式.下面将简单说明下@Component的用法,简单入门示例献给大家.   ...

  5. Spring-Boot自动装载servlet

    Spring-Boot自动装载servlet 本人spring-boot相关博客均自己手动编写,但技术均从简书 恒宇少年 处学习,该大佬一直是我的偶像,鉴于能充分理解,所以已做笔记的方式留下这些文档, ...

  6. Spring核心技术(八)——Spring自动装载的注解

    本文针对自动装载的一些注解进行描述. 基于注解的容器配置 @Required注解 @Required注解需要应用到Bean的属性的setter方法上面,如下面的例子: public class Sim ...

  7. Spring深入浅出(二)IOC的单例 ,继承,依赖,JDBC,工厂模式以及自动装载

    IOC的单例模式--Bean Spring中的bean是根据scope来决定的. scope有4种类型: 1.singleton:单例模型,表示通过Spring容器获取的该对象是唯一的.常用并且默认. ...

  8. springboot(二)配置SpringBoot支持自动装载Servlet

    Servlet详解:https://blog.csdn.net/yanmiao0715/article/details/79949911 Web 技术成为当今主流的互联网 Web 应用技术之一,而 S ...

  9. js点击左右滚动+默认自动滚动类

    js点击左右滚动+默认自动滚动类 点击下载

随机推荐

  1. 小乌龟 coding 克隆、提交一直提示无权限

    因为之前设置过账号,但是网上各种命令行清除都没有用,进入小乌龟设置删除全局配置,系统配置,保存就可以克隆等操作了

  2. Java框架spring 学习笔记(十四):注解aop操作

    回见Java框架spring Boot学习笔记(十三):aop实例操作,这里介绍注解aop操作 首先编写一个切入点HelloWorld.java package com.example.spring; ...

  3. vue在main.js中全局引用css的方法及坑

    步骤: 1.配置文件webpack.config.js: { test:/\.css$/, loader:'style-loader!css-loader' } 坑1:-loader尾缀 坑2:Mod ...

  4. ceph mimc版本ceph-deploy安装与配置

    系统环境centos7.6 内核5.0.9 YUM源配置 [root@k8s-sys-10-82-4-200 ceph-cluster]# cat /etc/yum.repos.d/ceph.repo ...

  5. oralce 的安装以及plsql的配置的html连接

    https://www.cnblogs.com/xkstudy/p/6400738.html

  6. Thread类与Runnable接口的深入理解

    Thread类与Runnable接口的深入理解1.Thread类实现了Runnable接口,实现run方法,其中target参数对应的就是一个Runnable接口的实现类 @Override publ ...

  7. 在centos7 部署bbr

    How to Deploy Google BBR on CentOS 7 Published on: Thu, Jan 5, 2017 at 6:34 pm EST CentOS Linux Guid ...

  8. Rsync未授权访问漏洞的修复

    转自:https://www.cnblogs.com/KevinGeorge/p/9648028.html 配置文件/etc/rsync.conf解析: motd file -> motd文件位 ...

  9. NC 部署问题

    1.was环境部署日志  IBM/WEBSPHERE/APPSERVER/PRORFILES/APPSRV01/LOGS/SERVER1/ 

  10. parseInt ,parseDouble,parseFloat

    转载https://www.cnblogs.com/originate918/p/6377616.html