從零開始打造自己的框架
阿新 • • 發佈:2019-01-30
首先來了解一下框架的執行流程:
入口檔案 -> 定義常量 -> 引入函式庫 -> 自動載入類 -> 啟動框架 -> 路由解析 -> 載入控制器 -> 返回結果
入口檔案index.php:
<?php
/*
入口檔案
1.定義常量
2.載入函式庫
3.啟動框架
*/
// 定義當前框架所在的根目錄
define('IMOOC', __DIR__);
// 定義框架核心檔案所在的目錄
define('CORE', IMOOC.'/core');
// 專案檔案所在目錄
define('APP', IMOOC.'/app');
// 定義專案除錯模式
define('DEBUG', true);
// 判斷專案是否處於除錯狀態
if (DEBUG) {
// 設定報錯級別:顯示所有錯誤
ini_set('display_error', 'On');
}else{
ini_set('display_error','Off');
}
// 載入函式庫
include CORE.'/common/function.php';
// 載入框架核心檔案
include CORE.'/imooc.php';
\core\Imooc::run();
框架核心目錄裡的公共函式function.php:
<?php
/*
輸出對應的變數或者陣列
*/
function p($var){
if(is_bool($var)){
var_dump($var);
}elseif (is_null($var)) {
var_dump(NULL);
}else{
echo '<pre style="position:relative;z-index:1000;padding:10px;border-radius:5px;background:#f5f5f5;border:1px solid #aaa;font-size:14px;line-height:18px;opacity:0.9;">' .print_r($var,true).'</pre>';
}
}
框架核心檔案imooc.php:
<?php
namespace core;
class Imooc
{
static public function run()
{
p('ok');
}
}
執行專案,訪問入口檔案index.php,瀏覽器如期輸出一個:ok