这里有新鲜出炉的 PHP 面向对象编程,程序狗速度看过来!
PHP(外文名: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本语言。语法吸收了 C 语言、Java 和 Perl 的特点,入门门槛较低,易于学习,使用广泛,主要适用于 web 开发领域。PHP 的文件后缀名为 php。
本篇文章主要介绍了 PHP 中类的自动加载的方法。类的自动加载是指在外面的页面中并不需要去 "引入" 类文件,但是程序会在需要的时候动态加载需要的类文件。
类的自动加载是指,在外面的页面中,并不需要去 "引入" 类文件,但是程序会在需要的时候动态加载需要的类文件。
方法 1:使用__autoload 魔术函数
当程序需要某个类时,就会去调用该函数,该函数我们需要自己去定义并在其中写好加载类文件的通用语句。
- <?php
- //需要类是自动调用,而且会传进来一个类名,这个案例的文件名为21A.class.php,类名为A
- function __autoload($className){
- require "./21".$className.".class.php";
- }
- $o1 = new A();
- $o1->v1 = 10;
- echo "<br/>v1:".$o1->v1;
- ?>
方法 2:使用 spl_autoload_register 函数
该函数的作用是生命多个可以用来代替 autoload 函数作用的函数,语法如下:spl_autoload_regist("函数名 1"); 如果用 spl_autoload_register,autoload 就失效了。
- <?php
- //注册两个用于自动加载的函数名
- spl_autoload_register('auto1');
- spl_autoload_register('auto2');
- function auto1($className){
- $file = "./21".$className.".class.php";
- if(file_exists($file)){
- require "./21".$className.".class.php";
- }
- }
- function auto1($className){
- $file = "./22".$className.".class.php";
- if(file_exists($file)){
- require "./22".$className.".class.php";
- }
- }
- //如果需要一个雷,但这个页面还没有记载,就会依次调用auto1和auto2,知道找到该类文件并加载
- ?>
来源: http://www.phperz.com/article/17/0809/340348.html