github路徑:
一、目錄結構及用途
1、入口檔案(index.php):
<?php /**2、公用函式庫(function.php):* 入口檔案
* 1、定義常量
* 2、載入函式庫
* 3、啟動框架 */
define('root', realpath('./'));
define('core', root.'/core');
include "vendor/autoload.php"; //
引入composer載入的類
define('debug', true
);if
(debug)
else
ini_set('display_errors', 'off');
include_once core.'/common/function.php';
include_once core.'/core.php';
spl_autoload_register('\core\core::load');
\core\core::run();
<?php /**4、路由檔案(route.php):* 公告函式庫 */
function p($var)}
3、核心檔案(core.php):
<?php /**
* 核心檔案 */
namespace core;
use core\lib\log
;class
core
else
throw
new \exception('找不到控制器:'.$controller
); }
static
public
function load($class
)
public
function assign($name, $value
)
public
function display($file
)
else
throw
new \exception('找不到該視**件');}}
<?php /**5、資料庫模型類(model.php):* 路由檔案 */
namespace core\lib;
use\core\lib\conf;
class
route
if (isset($uriarr[1]))
else
$this->action = conf::getconf('action', 'route');
//uri多餘部分轉化成get
for ($i = 2; $i
< count($uriarr) + 2; $i += 2)
isset($uriarr[$i + 1]) ? $_get[$uriarr[$i]] = $uriarr[$i + 1] : '';
} else
log::log('controller:'.$this->controller.', action:'.$this->action.', get:'. json_encode($_get
)); }
}
<?php /**6、配置檔案類(conf.php):* model類 */
namespace core\lib;
use\core\lib\conf;
class model extends
\pdo
catch (\pdoexception $e
) }
}
<?php /**7、日誌類(log.php):* 配置類 */
namespace core\lib;
class
conf
static
public
function getall($file
)
else
}return self::$conf[$file
]; }
}
<?php /**8、檔案日誌驅動類(file.php):* 日誌類 */
namespace core\lib;
use\core\lib\conf;
class
log
static
public
function
log($message, $file = 'log')
}
<?php資料庫配置檔案(db.php):namespace core\lib\
log;
usecore\lib\conf;
class
file
public
function
log($message, $file = 'log')
}
<?php /**日誌配置檔案(log.php):* 資料庫配置檔案 */
return
array
( 'dsn' => 'mysql:host=localhost; dbname=test',
'username' => 'root',
'passwd' => 'xy123456');
<?php /**路由配置檔案(route.php):* 日誌配置檔案 */
return
array
( 'drive' => 'file',
'option' =>[
'path' => root.'/log/']
);
<?php三、nginx配置,優化url路徑return
array
( 'controller' => 'index',
'action' => 'index');
四、配置composer,載入php擴充套件
php開發 yii框架
yii框架教程 以下圖表展示了乙個應用如何處理請求 使用者向入口指令碼web index.php發起請求。應用通過請求元件解析請求的路由。應用建立乙個控制器例項去處理請求。控制器建立乙個操作例項並針對操作執行過濾器。如果任何乙個過濾器返回失敗,則操作退出。如果所有過濾器都通過,操作將被執行。操作會載...
php框架基本資訊
什麼是框架?是一堆 的集合,裡面包含變數 函式 類 常量,裡面也有設計模式 mvc ar資料庫 單例等。為什麼要使用框架?使用框架可以節省工作量,可以快速 穩定 高效的搭建程式系統 可以使本身的維護性 靈活性 適應客戶需求方面得到最大化的增強,集中精力在業務方面。thinkphp包含 common ...
PHP 微服務開發框架
從近年來的業界架構演進來看,微服務已經逐漸成為趨勢。伴隨著微服務架構的這種快速發展節奏,各種開發語言各種型別的微服務開發框架相繼出現,據各家使用微服務框架的情況,可以看到主要分為四種模式 目前php相關的微服務框架不多,基本上都是基於swoole開發,下面介紹幾種網路上資訊相對較多的幾款php微服務...