首先,我们需要了解一个框架的运行流程
入口文件->定义常量->引入函数库->自动加载类
∨
返回结果 ->加载控制器->路由解析->启动框架
入口文件的作用
1 定义常量
2 加载函数库
3启动框架
以下为源码
<?php
//定义项目的根目录
define('ROOT_PATH',dirname(__FILE__));
//定义项目的核心目录
define('CORE',ROOT_PATH.'/core');
//定义项目目录
define('APP',ROOT_PATH.'/App');
//开启报错模式
define('DEBUG',true);
if (DEBUG) {
ini_set('display_error','On');
} else {
ini_set('display_error','Off');
}
//加载函数库
include CORE.'/common/function.php';
//加载框架核心
include CORE.'/main.php';
\core\core::run();
调用核心文件时需要用到命名空间,由于核心类的调用次数多所以我们一般把它设置为静态的。
静态方法
静态方法和非静态方法之间有一个重要的区别:在调用静态方法时,不再需要拥有类的实例。
静态方法和非静态方法使用原则:一是如果某个方法中不包含$this变量,就应该时静态方法;如果不需要类的实例,可能还应该使用静态类,这样可以免去实例化类的工作。另,在静态方法中时不能使用$this变量的,因为静态方法不属于某个特定的实例。