当前位置: 首页 > 图文教程 > 网络编程 > PHP > 第十二节--类的自动加载

PHP
php调用mysql存储过程
PHP+.htaccess实现全站静态HTML文件GZIP压缩传输(一)
PHP中HTTP方式下的Gzip压缩传输方法举偶
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
如何提高PHP速度
发布一个用PHP fsockopen写的HTTP下载的类
php公用函数列表[正则]
实现了一个PHP5的getter/setter基类的代码
php简单封装了一些常用JS操作
Smarty+QUICKFORM小小演示
给php新手谈谈我的学习心得
NOD32 v2.70.32 简体中文封装版 提供下载了
个人站长制做网页常用的php代码
收集的php编写大型网站问题集
如何从一个php文件向另一个地址post数据,不用表单和隐藏的变量的
php下实现农历日历的代码
php+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
php网页后退不再出现过期
PHP实现用户认证及管理完全源码
用PHP制作的意见反馈表源码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 100 ::
收藏到网摘: n/a

/*
+-------------------------------------------------------------------------------+
| = 本文为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();
?>