php基础知识:类与对象(2) 自动加载对象
程序员文章站
2022-05-09 23:09:38
自动加载对象: 很多开发者写面向对象的应用程序时对每个类的定义建立一个 php 源文件。一个很大的烦恼是不得不在每个...
自动加载对象:
很多开发者写面向对象的应用程序时对每个类的定义建立一个 php 源文件。一个很大的烦恼是不得不在每个脚本(每个类一个文件)开头写一个长长的包含文件列表。
在 php 5 中,不再需要这样了。可以定义一个 __autoload 函数,它会在试图使用尚未被定义的类时自动调用。通过调用此函数,脚本引擎在 php 出错失败前有了最后一个机会加载所需的类。
本例尝试分别从 myclass1.php 和 myclass2.php 文件中加载 myclass1 和 myclass2 类。
function __autoload($class_name) {
require_once $class_name . '.php';
}
$obj = new myclass1();
$obj2 = new myclass2();
注意:
在 __autoload 函数中抛出的异常不能被 catch 语句块捕获并导致致命错误。
很多开发者写面向对象的应用程序时对每个类的定义建立一个 php 源文件。一个很大的烦恼是不得不在每个脚本(每个类一个文件)开头写一个长长的包含文件列表。
在 php 5 中,不再需要这样了。可以定义一个 __autoload 函数,它会在试图使用尚未被定义的类时自动调用。通过调用此函数,脚本引擎在 php 出错失败前有了最后一个机会加载所需的类。
本例尝试分别从 myclass1.php 和 myclass2.php 文件中加载 myclass1 和 myclass2 类。
function __autoload($class_name) {
require_once $class_name . '.php';
}
$obj = new myclass1();
$obj2 = new myclass2();
注意:
在 __autoload 函数中抛出的异常不能被 catch 语句块捕获并导致致命错误。
上一篇: 肥宅快乐神器?华为nova6 5G助你打破过节胖三斤魔咒
下一篇: 详解python中递归函数