首页 > 代码库 > php 魔术方法 __autoload()
php 魔术方法 __autoload()
PHP在魔术函数__autoload()方法出现以前,如果你要在一个程序文件中实例化100个对象,那么你必须用include或者require包含进来100个类文件,或者你把这100个类定义在同一个类文件中——相信这个文件一定会非常大。
但是__autoload()方法出来了,以后就不必为此大伤脑筋了,这个类会在你实例化对象之前自动加载制定的文件。
下边我们通过一个例子来看一下,具体的使用方法,并在稍后说明使
ClassA.php 文件
<?php/** * Description of ClassA * * @author timeless */class ClassA { //put your code here public function __construct() { echo ‘ClassA load success<br/>‘; }}
ClassB.php 文件
<?php/** * Description of ClassB * * @author timeless */class ClassB { //put your code here public function __construct() { echo ‘ClassB load success<br/>‘; }}
index.php
<?php/** * @author 赵兴壮<834916321@qq.com> * @package phpClass * @param string $classname 类名 * php 魔术方法 __autoload(); */function __autoload($classname) { $classpath = ‘.‘. DIRECTORY_SEPARATOR . $classname . ‘.php‘; if (file_exists($classpath)) { require_once $classpath; } else { echo ‘class file‘.$classpath.‘not found‘; }}$newClassA=new ClassA();$newClassB=new ClassB();
结果:
ClassA load successClassB load success
php 魔术方法 __autoload()
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。