Home  >  Article  >  php教程  >  php __autoload魔术方法

php __autoload魔术方法

WBOY
WBOYOriginal
2016-06-13 10:00:411027browse

在php5以前好像是没有这个功能的,现在我们来看看新的autoload魔术方法用法吧,当你了解他后你觉得他太神奇了,好了费话不说了,看看测试过滤。

然而今天我却发现这个__autoload魔术方法或者你愿意称他为魔术函数,太专一了。当他加载需要包含的类文件时,甚至不管类文件中定义类之外的其它声明。

开始回放这个机制。

首先我们在创建一个Test.class.php文件,键入如下内容

 代码如下 复制代码

$publicPara='中共十七大啥时候召开的?';
class Test{
 public function  __construct(){
  global $publicPara;
  if(isset($publicPara)){
   echo $publicPara;
  }
  else{
   echo "管我啥事儿了?";
  }
 }
}

得保存这个文件哦!

然后重新建立一个文件命名为do.php键入如下内容

 代码如下 复制代码
require_once('Test.class.php');
new Test();
?>

这样的话输出的正如我们期望的那样是:中共十七大啥时候召开的?

但是当你用到__autoload这个魔术方法的时候,问题就出来了

 代码如下 复制代码

function __autoload($classname){
require_once($classname.".class.php");
}
new Test();
?>

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn