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


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 中文处理函数集合
Aug 27 PHP
基于php权限分配的实现代码
Apr 28 PHP
深入php 正则表达式的学习探讨
Jun 06 PHP
php删除字符串末尾子字符,删除开始字符,删除两端字符(实现代码)
Jun 27 PHP
Yii Framework框架获取分类下面的所有子类方法
Jun 20 PHP
php操作(删除,提取,增加)zip文件方法详解
Mar 12 PHP
PHP+MYSQL中文乱码问题
Jul 01 PHP
php使用变量动态创建类的对象用法示例
Feb 06 PHP
php实现的redis缓存类定义与使用方法示例
Aug 09 PHP
PHP实现微信商户支付企业付款到零钱功能
Sep 30 PHP
php链式操作的实现方式分析
Aug 12 PHP
PHP字符串与数组处理函数用法小结
Jan 07 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
解析dedeCMS验证码的实现代码
2013/06/07 PHP
php比较两个绝对时间的大小
2014/01/31 PHP
微信支付扫码支付php版
2016/07/22 PHP
javascript实现划词标记+划词搜索功能
2007/03/06 Javascript
基于jQuery图片平滑连续滚动插件
2009/04/27 Javascript
将函数的实际参数转换成数组的方法
2010/01/25 Javascript
javascript window.opener的用法分析
2010/04/07 Javascript
js获取浏览器的可视区域尺寸的实现代码
2011/11/30 Javascript
关于query Javascript CSS Selector engine
2013/04/12 Javascript
html中使用javascript调用本地程序(exe、doc等)实现代码
2013/04/26 Javascript
原生JS下拉加载插件分享
2016/12/26 Javascript
js实现九宫格拼图小游戏
2017/02/13 Javascript
jQuery Jsonp跨域模拟搜索引擎
2017/06/17 jQuery
Javascript 编码约定(编码规范)
2018/03/11 Javascript
iview日期控件,双向绑定日期格式的方法
2018/03/15 Javascript
vue-socket.io跨域问题有效解决方法
2020/02/11 Javascript
实例讲解python函数式编程
2014/06/09 Python
Python的SQLAlchemy框架使用入门
2015/04/29 Python
Flask数据库迁移简单介绍
2017/10/24 Python
Python实现嵌套列表去重方法示例
2017/12/28 Python
python设置值及NaN值处理方法
2018/07/03 Python
对python mayavi三维绘图的实现详解
2019/01/08 Python
Python-Seaborn热图绘制的实现方法
2019/07/15 Python
用python发送微信消息
2020/12/21 Python
纯css3(无图片/js)制作的几个社交媒体网站的图标
2013/03/21 HTML / CSS
Interhome丹麦:在线预订度假屋和公寓
2019/07/18 全球购物
一套SQL笔试题
2016/08/14 面试题
自我评价怎么写好呢?
2013/12/05 职场文书
工作疏忽检讨书
2014/01/25 职场文书
党员个人对照检查材料范文
2014/09/24 职场文书
化验员岗位职责
2015/02/14 职场文书
2015年客服工作总结范文
2015/04/02 职场文书
用python开发一款操作MySQL的小工具
2021/05/12 Python
MySQL分库分表详情
2021/09/25 MySQL
mysql如何能有效防止删库跑路
2021/10/05 MySQL
python神经网络学习 使用Keras进行回归运算
2022/05/04 Python