博主信息
博文 48
粉丝 3
评论 1
访问量 45914
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
类的自动加载器
吴长清
原创
541人浏览过

关键字 spl_autoload_register(function ($class) {}

Demo1.php

  1. namespace admin\controller;
  2. class Demo1
  3. {
  4. public static function index()
  5. {
  6. return '这是Demo1下面的index方法,其路径时: '.__METHOD__;
  7. }
  8. }

Demo2.php

  1. namespace admin\controller;
  2. class Demo2
  3. {
  4. public static function index()
  5. {
  6. return '这是Demo2下面的index方法,其路径时: '.__METHOD__;
  7. }
  8. }

autoloader.php自动加载器
作用:简化了在引用多个类时需要一个一个使用require引入当前文件的重复操作

  1. <?php
  2. // 自动加载器
  3. spl_autoload_register(function ($class) {
  4. // 适配不同系统环境的路径
  5. $path = str_replace('\\', DIRECTORY_SEPARATOR, $class);
  6. // __DIR__ : 当前文件的目录
  7. // DIRECTORY_SEPARATOR: 当前系统路径的分隔符‘\’或者‘/’
  8. // 自动加载绝对路径
  9. require __DIR__ . DIRECTORY_SEPARATOR . $path . '.php';
  10. });

index.php中使用自动加载器,并调用Demo1.phpDemo2.php中的index方法

  1. // 引入自动加载器
  2. require 'autoloader.php';
  3. // 起别名
  4. use admin\controller\Demo1;
  5. use admin\controller\Demo2;
  6. // 调用
  7. echo Demo1::index(). '<br>';
  8. echo Demo2::index(). '<br>';

使用自动加载器的前提:

  1. 一个文件只有一个类
  2. 这个类名和文件名必须一致
  3. 这个类的命名空间,必须映射到类文件所在的路径
批改老师:PHPzPHPz

批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学