位置: 编程技术 - 正文

PHP中spl_autoload_register()函数用法实例详解

编辑:rootadmin

推荐整理分享PHP中spl_autoload_register()函数用法实例详解,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

本文实例分析了PHP中spl_autoload_register()函数用法。分享给大家供大家参考,具体如下:

在了解这个函数之前先来看另一个函数:__autoload。

一、__autoload

这是一个自动加载函数,在PHP5中,当我们实例化一个未定义的类时,就会触发此函数。看下面例子:

printit.class.php:

index.php

运行index.php后正常输出hello world。在index.php中,由于没有包含printit.class.php,在实例化printit时,自动调用__autoload函数,参数$class的值即为类名printit,此时printit.class.php就被引进来了。

在面向对象中这种方法经常使用,可以避免书写过多的引用文件,同时也使整个系统更加灵活。

二、spl_autoload_register()

再看spl_autoload_register(),这个函数与__autoload有与曲同工之妙,看个简单的例子:

将__autoload换成loadprint函数。但是loadprint不会像__autoload自动触发,这时spl_autoload_register()就起作用了,它告诉PHP碰到没有定义的类就执行loadprint()。

spl_autoload_register() 调用静态方法

spl_autoload_register

PHP中spl_autoload_register()函数用法实例详解

(PHP 5 >= 5.1.2)

spl_autoload_register — 注册__autoload()函数

说明

bool spl_autoload_register ([ callback $autoload_function ] )将函数注册到SPL __autoload函数栈中。如果该栈中的函数尚未激活,则激活它们。

如果在你的程序中已经实现了__autoload函数,它必须显式注册到__autoload栈中。因为spl_autoload_register()函数会将Zend Engine中的__autoload函数取代为spl_autoload() 或 spl_autoload_call()。

参数

autoload_function

欲注册的自动装载函数。如果没有提供任何参数,则自动注册autoload的默认实现函数spl_autoload()。

返回值

如果成功则返回 TRUE,失败则返回 FALSE。

注:SPL是Standard PHP Library(标准PHP库)的缩写。它是PHP5引入的一个扩展库,其主要功能包括autoload机制的实现及包括各种Iterator接口或类。SPL autoload机制的实现是通过将函数指针autoload_func指向自己实现的具有自动装载功能的函数来实现的。SPL有两个不同的函数spl_autoload, spl_autoload_call,通过将autoload_func指向这两个不同的函数地址来实现不同的自动加载机制。

如果同时用spl_autoload_register注册了一个类的方法和__autoload函数,那么,会根据注册的先后,如果在第一个注册的方法或函数里加载了类文件,就不会再执行第二个被注册的类的方法或函数。反之就会执行第二个被注册的类的方法或函数。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php面向对象程序设计入门教程》、《PHP数学运算技巧总结》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php正则表达式用法总结》、及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

PHP中set_include_path()函数相关用法分析 本文实例讲述了PHP中set_include_path()函数相关用法。分享给大家供大家参考,具体如下:先看如下代码:php/**定义根目录*/define('__TYPECHO_ROOT_DIR__',dirname(__FI

完美利用Yii2微信后台开发的系列总结 网上有很多关于YII2.0微信开发教程,但是太过复杂凌乱,所以今天在这里给大家整理总结利用Yii2微信后台开发的系列了,给需要的小伙伴们参考。一:

php字符串比较函数用法小结(strcmp,strcasecmp,strnatcmp及strnatcasecmp) 本文实例分析了php字符串比较函数用法。分享给大家供大家参考,具体如下:直接比较字符串是否完全一致,可以使用"=="来进行,但是有时候可能需要进

标签: PHP中spl_autoload_register()函数用法实例详解

本文链接地址:https://www.jiuchutong.com/biancheng/301358.html 转载请保留说明!

上一篇:详谈PHP程序Laravel 5框架的优化技巧(php程序技术)

下一篇:PHP中set_include_path()函数相关用法分析

  • 企业所得税季度申报表怎么填
  • 出口企业的退税属不属于纳税总额
  • 递延收益与递延所得税负债的区别
  • 不确认销售收入结转销售成本
  • 在建工程人员工资计入产品成本吗
  • 房地产开发企业土地增值税预缴
  • 讲师讲课费标准2019
  • 对供应商的罚款怎么入账
  • 将资产货物用于业务宣传增值税
  • 固定资产处理申请
  • 培训相关的场地租赁费可以列入职工教育经费税前扣除吗?
  • 营改增后建筑施工税率调整变化
  • 增值税申报税额填错了怎么进行填
  • 发票查询显示无数据怎么回事
  • 政府机关有纳税识别号吗
  • 小规模纳税人应交增值税科目设置
  • 审计调账后企业怎么处理
  • 小规模纳税人的增值税计入成本吗
  • 无形资产可以作为仓储物
  • 增值税专用发票的税率是多少啊
  • 服务行业营业成本占比
  • 生物制品税率3%税率什么时候开始的
  • 企业安全库存是什么
  • windows搜索为什么那么慢
  • 债权转增资本公积账务处理
  • 进货折扣是怎么计算
  • 深度deepin系统安装教程
  • 安全生产责任险保障范围
  • 开出发票单位收到款项如何平账?
  • 谷歌浏览器插件中心
  • 最贵的苹果平板
  • 收不回的应收账款会计分录
  • 民间非营利组织会计制度
  • vue状态管理有哪些
  • 公司向法人借款的借条怎么写
  • css转换器
  • vue实现文件上传和下载
  • php socket_create
  • 金融机构拆出资金的最长期限
  • 增值税专用发票和普通发票的区别
  • 公司购进软件的账务处理
  • 工程施工企业的增值税税率是多少
  • python的socket
  • 厂家给的返点怎么下往来账
  • 合作卖东西怎么分成
  • 购房补贴退契税3个月没到账
  • 企业向个人借款协议范本
  • 代开发票流程该是什么?
  • MySQL5.6 Replication主从复制(读写分离) 配置完整版
  • 只有进项税需要结转吗
  • 免征增值税和增值税区别
  • 其他应付款科目贷方登记发生的各种应付
  • 畜类生产性生物资产计算折旧的最低年限
  • 受疫情影响较大的困难行业企业2020
  • 押金无法收回账怎么办
  • 公司购买商品房能折旧吗
  • 企业给员工单独交社保
  • 未确认融资费用计算公式
  • 盈利是不是利润的意思
  • 错误凭证如何处理
  • 如何理解其他应收款的概念
  • 一般纳税人进货的会计分录怎么做
  • mysql 备份方式
  • 该怎么配置
  • 单网卡计算机有几个网络接口
  • ubuntu系统安装报错
  • wininfo.exe - wininfo是什么进程
  • linux管道与重定向
  • win7还原按钮
  • win7的记事本在哪里打开
  • WIN10企业版安装NET3.5
  • nodejs支付宝支付
  • javascript create
  • linux搭建php运行环境
  • javascript的代码写在哪里
  • 安卓手机管家推荐
  • js缩小图片尺寸
  • 浙里办怎么给小孩子缴医保费
  • 经济适用房土地使用年限
  • 山西省税务局网站系统维护公告
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设