Slim是一款基于PHP的web開發微架構,幫助 PHP 開發者快速編寫簡單強大的web應用和API。Slim的接口簡單而符合直覺,文檔也很詳細。
直接看一段代碼吧:
$app->get('/', function () use ($app) {
var_dump($app);
});
是不是有點像jQuery?事實上,Slim的作者是PHP和JavaScript程式員,同時也是《PHP The Right Way》的作者。
特性
- 強大的HTTP URL 路由
- 配置簡單
- 自定義視圖
- 支援AES-256加密cookies
- HTTP緩存
- 可定制的日志記錄
- 錯誤處理
- 可擴充的中間層和hook架構
- 錯誤處理和調試
安裝
使用 Composer 進行安裝
首先在你的項目中安裝 Composer:
curl -s https://getcomposer.org/installer | php
然後在你的項目根目錄中建立名為 composer.json 的檔案:
{
"require": {
"slim/slim": "2.*"
}
}
通過 composer 進行安裝:
php composer.phar install
添加下列代碼到應用的 index.php 檔案中:
<?php
require 'vendor/autoload.php';
系統依賴
- PHP 5.3.0 或以上
- 如果你需要對cookies進行加密,則還需要 mcrypt 拓展。
Hello World
生成一個 Slim 應用執行個體,定義路由,并運作應用:
$app = new \Slim\Slim();
$app->get('/hello/:name', function($name){
echo "Hello, $name";
});
$app->run();
配置
Slim 架構提供了兩種方式對其進行配置。一種是在生成執行個體的時候進行參數設定,另一種則是在生成執行個體之後。所有的設定參數都可以在生成執行個體的時候以數組的形式傳遞給 Slim 的構造函數(constructor)。所有的設定參數都可以在生成執行個體之後擷取或者修改,但是有些設定并不能簡單的隻依靠應用執行個體的 config 函數來完成,是以有必要在後面額外說明。在我羅列這些有效設定參數之前,我想簡單的介紹下怎麼定義或檢查 Slim 應用的參數設定。
執行個體生成時
生成執行個體時定義設定,隻需要向 Slim 的構造器傳遞一個關聯數組。
$app = new Slim(array(
'debug' => true
));
執行個體生成之後
要在執行個體生成之後定義參數設定,大部分設定都可以使用應用執行個體的 config 函數;config 函數的第一個參數是設定的名稱,第二個參數是設定的參數值。
$app->config('debug', false);
同時設定多個參數:
$app->config(array(
'debug' => true,
'templates.path' => ' ../templates'
));
擷取應用某項設定:
$settingValue = $app->config('templates.path'); // 傳回 "../templates"