第十二节--类的自动加载


Posted in PHP onNovember 16, 2006

/*
+-------------------------------------------------------------------------------+
| = 本文为Haohappy读<<Core PHP Programming>> 
| = 中Classes and Objects一章的笔记 
| = 翻译为主+个人心得 
| = 为避免可能发生的不必要的麻烦请勿转载,谢谢 
| = 欢迎批评指正,希望和所有PHP爱好者共同进步! 
+-------------------------------------------------------------------------------+
*/

第十二节--类的自动加载

当你尝试使用一个未定义的类时,PHP会报告一个致命错误. 解决方法就是添加一个类,可以用include包含一个文件. 毕竟你知道要用到哪个类. 但是,PHP提供了类的自动加载功能, 这可以节省编程的时间. 当你尝试使用一个PHP没有组织到的类, 它会寻找一个__autoload的全局函数. 如果存在这个函数,PHP会用一个参数来调用它,参数即类的名称. 

例子6.15说明了__autoload是如何使用的. 它假设当前目录下每个文件对应一个类. 当脚本尝试来产生一个类User的实例,PHP会执行__autoload. 脚本假设class_User.php中定义有User类.. 不管调用时是大写还是小写,PHP将返回名称的小写.

Listing 6.15 Class autoloading

<?php   
   //define autoload function   
   function __autoload($class)   
   {   
       include("class_" . ucfirst($class) . ".php");   
   }      //use a class that must be autoloaded   
   $u = new User;   
   $u->name = "Leon";   
   $u->printName();   
?>  
PHP 相关文章推荐
PHP 年龄计算函数(精确到天)
Jun 07 PHP
PHP 抽象方法与抽象类abstract关键字介绍及应用
Oct 16 PHP
php实现将数组转换为XML的方法
Mar 09 PHP
php 把数字转换成汉字的代码
Jul 21 PHP
php中json_encode不兼容JSON_UNESCAPED_UNICODE的解决方案
May 31 PHP
Thinkphp3.2.3分页使用实例解析
Jul 28 PHP
php简单压缩css样式示例
Sep 22 PHP
thinkPHP中钩子的使用方法实例分析
Nov 16 PHP
PHP智能识别收货地址信息实例
Jan 05 PHP
PHP strripos函数用法总结
Feb 11 PHP
PHP中遍历数组的三种常用方法实例分析
Jun 24 PHP
php 文件上传至OSS及删除远程阿里云OSS文件
Jul 04 PHP
第十一节--重载
Nov 16 #PHP
第十节--抽象方法和抽象类
Nov 16 #PHP
第九节--绑定
Nov 16 #PHP
第八节--访问方式
Nov 16 #PHP
第七节--类的静态成员
Nov 16 #PHP
第六节--访问属性和方法
Nov 16 #PHP
第五节--克隆
Nov 16 #PHP
You might like
php mysql procedure实现获取多个结果集的方法【基于thinkPHP】
2016/11/09 PHP
PHP使用HTML5 FormData对象提交表单操作示例
2019/07/02 PHP
php和js实现根据子网掩码和ip计算子网功能示例
2019/11/09 PHP
php查看一个变量的占用内存的实例代码
2020/03/29 PHP
IE8的JavaScript点击事件(onclick)不兼容的解决方法
2013/11/22 Javascript
JavaScript制作的可折叠弹出式菜单示例
2014/04/04 Javascript
浅谈javascript中字符串String与数组Array
2014/12/31 Javascript
jquery衣服颜色选取插件效果代码分享
2015/08/28 Javascript
Bootstrap表单Form全面解析
2016/06/13 Javascript
JS实现的简单轮播图运动效果示例
2016/12/22 Javascript
使用jQuery.Pin垂直滚动时固定导航
2017/05/24 jQuery
浅谈js的解析顺序 作用域 严格模式
2017/10/23 Javascript
详解angular脏检查原理及伪代码实现
2018/06/08 Javascript
vue配置nprogress实现页面顶部进度条
2019/09/21 Javascript
js仿360开机效果
2019/12/26 Javascript
wxPython学习之主框架实例
2014/09/28 Python
Python中数字以及算数运算符的相关使用
2015/10/12 Python
python+matplotlib实现鼠标移动三角形高亮及索引显示
2018/01/15 Python
Python常见MongoDB数据库操作实例总结
2018/07/24 Python
树莓派+摄像头实现对移动物体的检测
2019/06/22 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
如何在Cloud Studio上执行Python代码?
2019/08/09 Python
python实现视频读取和转化图片
2019/12/10 Python
python基于event实现线程间通信控制
2020/01/13 Python
python操作docx写入内容,并控制文本的字体颜色
2020/02/13 Python
PyCharm GUI界面开发和exe文件生成的实现
2020/03/04 Python
详解python tkinter 图片插入问题
2020/09/03 Python
python爬取抖音视频的实例分析
2021/01/19 Python
新秀丽拉杆箱美国官方网站:Samsonite美国
2016/07/25 全球购物
现代生活方式的家具和装饰:Dot & Bo
2018/12/26 全球购物
JD Sports荷兰:英国领先的运动时尚零售商
2020/03/13 全球购物
周年庆典邀请函范文
2014/01/24 职场文书
大学生活动策划方案
2014/02/10 职场文书
电子商务专业求职信范文
2015/03/19 职场文书
廉洁自律证明
2015/06/24 职场文书
Win10 最新稳定版本 21H2开始推送
2022/04/19 数码科技