码迷,mamicode.com
首页 > Web开发 > 详细

PHP学习-类的自动加载

时间:2017-09-27 16:11:42      阅读:162      评论:0      收藏:0      [点我收藏+]

标签:匿名   文件名   bsp   div   文件   col   autoload   必须   读取   

其实我也搞不懂类的自动加载有什么用,只当是记录一下学习过程。

1.使用__autoload($className)方法

  比如说,有一个外部的类,我们需要另一个php文件中读取,通常可以使用__autoload方法来加载。

 例如:

  有一个Person类:

1 <?php
2 class Person{
3     
4 }

 我们在另一个php文件构造这个Person类的对象。

1 function __autoload($className){
2     require $className . ".php";
3 }
4 
5 $person = new Person();
6 var_dump($person);

需要注意的是Person所在的文件中,文件名必须跟类名相同。

2.使用spl_autoload_register($className)方法

  A.传递一个匿名函数(闭包)

spl_autoload_register(function($className){
    require $className . ".php";
});

 B.传递类的一个方法

 1 <?php 
 2 
 3 class Bean{
 4     public function autoLoad($className){
 5         require $className . ".php";
 6     }
 7 }
 8 
 9 /**
10   *第一个参数是一个类的对象
11   *第二个参数是类中的一个方法
12   */
13 spl_autoload_register([new Bean, ‘autoLoad‘]);
14 $person = new Person();
15 var_dump($person);

 

PHP学习-类的自动加载

标签:匿名   文件名   bsp   div   文件   col   autoload   必须   读取   

原文地址:http://www.cnblogs.com/Stay-Hungry-Stay-Foolish/p/7601951.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!