一個超級簡單的php框架

最近自己寫了一個php框架,github地址如下:
blakeFez-PHP-Framework
該框架功能比較少,比較適合用於個人小型網站。
該框架的目錄結構如下:

/command    //該目錄用於存放cli模式下的command類
/controller //該目錄用於存放cgi模式下的controller類
/frame  //該目錄用於存放框架的核心代碼
    BlakeFez.php //這是框架的核心文件
    Command.php //command的基類,所有的command類都要繼承該類
    CommonMysql.php //實現的一個mysql類
    CommonRequest.php //實現的一個獲取url請求類,最好使用
                //CommonRequest::getRequest('option')來代替
                //$_GET['option']和$_POST['option']
    Controller.php //controller類的基類,所有的controller類都要
                //繼承該類
    Model.php //model類的基類,所有的model都要繼承該類
/model  //該目錄用於存放model類
/service //該目錄用於存放公用的service類
/static //該目錄用於存放js、css、圖片等
/view //該目錄用於存放前端模板文件

該框架支持CGI和CLI兩種模式。

在CGI模式下,使用方法如下:
①、路由方式
比方有這樣一個url:http://host/index.php?c=index&a=welcome
則實際會請求/controller目錄下IndexController類的welcome方法。

②、前端渲染
在controller裏面,使用:

$this->out['title'] = 'welcome to china';

則會把變量title輸出到前端。在前端模板文件中,可以這樣使用該變量:

<title><?php echo $title;?></title>

前端文件的命名方式是這樣的:
比如IndexController類的welcome方法對應的前端文件是:
/view/index/welcome.php

如果是異步請求的,不需要前端渲染,可以在controller中這樣寫:

$this->outType = 'json';

在CGI模式下,使用方法如下:
php SRC_PATH/index.php -c index -a index
這行命名將會執行command目錄下IndexCommand類的index方法。

發佈了33 篇原創文章 · 獲贊 3 · 訪問量 8萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章