第十二节--类的自动加载 -- Classes and Objects in PHP5 [12]

原创 2004年06月23日 02:18:00

第十二节--类的自动加载 -- Classes and Objects in PHP5 [12]


作者:Leon Atkinson 翻译:Haohappy 来源:超越PHP
 
/*
+-------------------------------------------------------------------------------+
| = 本文为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();
?>

Classes and Objects in PHP5(5)

13.对象的串行化   串行化可以把变量包括对象,转化成连续bytes数据. 你可以将串行化后的变量存在一个文件里或在网络上传输. 然后再反串行化还原为原来的数据. 你在反串行化类的对象之前定义的类,...
  • dreambird1983
  • dreambird1983
  • 2007年06月07日 11:59
  • 287

第十一节--重载 -- Classes and Objects in PHP5 [11]

第十一节--重载 -- Classes and Objects in PHP5 [11] 作者:Leon Atkinson 翻译:Haohappy 来源:超越PHP   /*+---...
  • WapWeb
  • WapWeb
  • 2004年06月23日 02:17
  • 1155

Classes and Objects in PHP5(3)

7.类的静态成员  类的静态成员与一般的类成员不同: 静态成员与对象的实例无关,只与类本身有关. 他们用来实现类要封装的功能和数据,但不包括特定对象的功能和数据. 静态成员包括静态方法和静态属性.  ...
  • dreambird1983
  • dreambird1983
  • 2007年06月07日 11:54
  • 325

Classes and Objects in PHP5(4)

10.抽象方法和抽象类   面向对象程序通过类的分层结构构建起来. 在单重继承语言如PHP中, 类的继承是树状的. 一个根类有一个或更多的子类,再从每个子类继承出一个或更多下一级子类. 当然,可能存在...
  • dreambird1983
  • dreambird1983
  • 2007年06月07日 11:57
  • 283

第十四节--命名空间 -- Classes and Objects in PHP5 [14]

第十四节--命名空间 -- Classes and Objects in PHP5 [14] 作者:Leon Atkinson 翻译:Haohappy 来源:超越PHP   /*+-...
  • WapWeb
  • WapWeb
  • 2004年06月23日 02:22
  • 1211

 Classes and Objects in PHP5(2)

 4.构造函数和析构函数     如果你在一个类中声明一个函数,命名为__construct,这个函数将被当成是一个构造函数并在建立一个对象实例时被执行. 清楚地说,__是两个下划线. 就像其它任何函...
  • dreambird1983
  • dreambird1983
  • 2007年06月07日 11:52
  • 321

Classes and Objects in PHP5(1)

作者:Leon Atkinson 翻译:Haohappy1.面向对象编程  面向对象编程被设计来为大型软件项目提供解决方案,尤其是多人合作的项目. 当源代码增长到一万行甚至更多的时候,每一个更动都可能...
  • dreambird1983
  • dreambird1983
  • 2007年06月07日 11:49
  • 382

PHP5的对象模型[12]--类的自动加载

第十二节--类的自动加载当你尝试使用一个未定义的类时,PHP会报告一个致命错误. 解决方法就是添加一个类,可以用include包含一个文件. 毕竟你知道要用到哪个类. 但是,PHP提供了类的自动加载功...
  • Haohappy2004
  • Haohappy2004
  • 2004年08月08日 00:17
  • 1724

第十五节--Zend引擎的发展 -- Classes and Objects in PHP5 [15]

第十五节--Zend引擎的发展 -- Classes and Objects in PHP5 [15] 作者:Leon Atkinson 翻译:Haohappy 来源:超越PHP   ...
  • WapWeb
  • WapWeb
  • 2004年06月23日 02:26
  • 1042

Classes as objects(元类)

Python确实是我接触过的最高深的一门语言,其实我接触的语言还是挺多的(假装很多。。。),但是像Python这样一个底层的语法让我研究一晚上的还正是没遇到过,对,我搞这个东西用了一个晚上!!! 官...
  • u014665013
  • u014665013
  • 2017年10月15日 23:39
  • 156
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第十二节--类的自动加载 -- Classes and Objects in PHP5 [12]
举报原因:
原因补充:

(最多只允许输入30个字)