最新版本:V1.2.2
開源地址:https://github.com/sasou/php-gene 作者:sasou
文檔地址:http://php-gene.com/doc
Gene 是一個靈活、強大、簡單、高效的c擴展框架。通過精心的設計與高效的技術實現,配合數據庫、緩存等類庫,帶來新的開發體驗。
對於gene應用,可以遵循類似下面的目錄結構,熟悉後可以自定義目錄結構.
app
├─Cache
│ └─Views
├─Ext
│ ├─Com
│ │ ├─Cache
│ │ ├─Db
│ │ ├─Queue
├─Config
├─Controllers
│ └─Admin
├─Models
│ ├─Admin
└─Views
├─admin
└─web
入口文件是所有請求的入口, 一般都借助於rewrite規則, 把所有的請求都重定向到這個入口文件
define('APP_ROOT', __dir__ . '/app/');
$app = new \Gene\Application();
$app
->load("router.ini.php")
->load("config.ini.php")
->run();
可以配置http請求方式(get,post,put,patch,delete,trace,connect,options,head),配置路由處理函數:回調函數、類的方法(格式className@methodName)。
$router = new \Gene\Router();
$router->clear()
->get("/", "\Controllers\Index@run")
->error(404,function()
{
echo " 404 ";
})
->hook("before", function(){
echo " before ";
})
->hook("after", function($params){
echo " after ";
});
配置緩存支持bool、int、long、string、array、常量等數據類型。
$config = new \Gene\Config();
$config->clear();
$config->set("_db",array(
'adapter' => 'Pdo\Mysql',
'host' => '127.0.0.1',
'port' => 3306,
'user' => 'root',
'password' => '123456',
'database' => 'demo',
'charset' => 'utf8',
'persistent' => false,
));
$config->set("_cache",array(
'adapter' => 'Memcaches',
'servers' => array(
'default' => array(
'host' => '127.0.0.1',
'port' => 8888,
'persistent' => true)
)
));
對於路由配置的\Controllers\Index@run, 控制器的目錄是在app目錄下的Controllers目錄下Index.php文件, Action的命名是run。
namespace Controllers;
class Index extends \Gene\Controller
{
/**
* run
* @param type $params
*/
public function run()
{
echo 'run';
}
}
在浏覽器輸入項目地址,比如:http://localhost/
看到 before run after 輸出吧!!!
注意:如果沒有看到before run after, 那麼請查看PHP的錯誤日志, 找出問題在哪裡。