laravel源码分析之公设

在分析源码之前,有一些公设作为前情提要。

公设(一般指公理)是指依据人类理性的不证自明的基本事实,经过人类长期反复实践的考验,不需要再加证明的基本命题。

类的自动加载
为了代码的复用需要用到函数,类,包,框架…。很显然对于php任何框架,类的自动加载是避免不了的。最开始使用require/include语句,还好php5之后出现了类的自动加载。

autoload机制可以使得PHP 程序有可能在使用类时才自动包含类文件,而不是一开始就将所有的类文件include进来,这种机制也称为Lazy loading(延迟加载)。

总结起来,自动加载功能带来了几处优点:
1. 使用类之前无需include / require
2. 使用类的时候才会include / require文件,实现了lazyloading,避免了include / require多余文件。
3. 无需考虑引入类的实际磁盘地址,实现了逻辑和实体文件的分离。

php自动加载__autoload()
通常 PHP5 在使用一个类时,如果发现这个类没有加载就会自动运行__autoload()
函数,这个函数是我们在程序中自定义的,在这个函数中我们可以加载需要使用的类。下面是个简单的示例:

function __autoload($classname){
   require_once($classname . ".class.php");
}

猜你喜欢

转载自blog.csdn.net/u011584949/article/details/80596198