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

PHP
如何才能将数据从文本导入到mysql数据库
解决RHAS3中Apache2PHP上传大小限制
PHP技术进阶 用PHP处理多个同名复选框
PHP实现静态发布的方法浅谈
《PHP设计模式介绍》第十八章 结论
《PHP设计模式介绍》关于本书说明
通过PHP+MYSQL实现 网站在线人数统计
创建XML Http Request对象两个的方法
PHP面向对象编程快速入门
UCenter HOME 数据调用小技巧
关于PHP在linux下面获取GOOGLE的PR值
评论:PHP程序不适用大型系统的九大原因
如何用PHP和mysql创建一个ShoutBox
你或许尚未了解PHP的那10件事情
Zend Framework 入门——快速上手
Zend Framework 入门——多国语言支持
Zend Framework 入门——错误处理
Zend Framework 入门——页面布局
PHP5+UTF8多文件上传类
PHP设置COOKIE保留时间为浏览器进程

PHP 中的 第十二节 类的自动加载 [12]


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


当你尝试使用一个未定义的类时,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();
?>