SlightPHP是一個輕量級的php框架,支援php5,和php模組方式使用,和apc使用效能更高,下面是小編為大家搜尋整理的SlightPHP的使用技巧,希望能給大家帶來幫助!更多精彩內容請及時關注我們應屆畢業生考試網!
有兩種方法使用SlightPHP類:
一、使用普通的php方法
的程式碼如下:
require_once("");
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>
二、使用php模組方法
的程式碼如下:
if(!extension_loaded('SlightPHP')) {
if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) {
$rt = dl('');
} else {
$rt = dl('');
}
if($rt===false){
die("skip");
}
}
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>
那麼你就可以這樣訪問
$zone/$object/$method
這樣的方式
他就會執行APP_DIR/$zone/$的Page$method方法
你要做的.就是建立 APP_DIR/$zone/$檔案,裡面定議類名為$zone_$object的類和Page$method方法就行了,相當簡單!
APP_DIR/$zone/$的程式碼如下:
class $zone_$object{
function Page$method(){}
}
?>
第一個示例,HelloWorld!
第一步:檔案內容
require_once("");
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>
第二步:請在所在目錄下新建zone目錄,在zone目錄下新建,原始碼如下:
class zone_default{
function PageEntry($inPath){
echo "Hello, world!";
}
}
?>
第三步:正常訪問你的
SlightPHP 1.0 (正式釋出!)
SlightPHP是一個輕量級的PHP框架,支援PHP5及以上版本。
主要特點
1 支援模組和普通方式載入,用模組方式請編譯pecl目錄下的原始碼
2 支援資料庫讀寫庫分離
3 支援Apache的Rewrite,精簡URL
4 擴充套件Sphinx類
5 核心程式碼非常小,就6K,速度快效率高,幾乎和原生的一樣
6 其它
Hello, world!
第一步 建立
require_once("");
//或者你也可以用動態庫方式 dl("");
SlightPHP::run();
?>
第二步 請在所在目錄下新建zone目錄,在zone目錄下新建
class zone_page{
function PageEntry($inPath){
echo "Hello, world!";
}
}
?>
第三步 請在你的位址列裡訪問,如
http://localhost/
基本概念
zone 對映為一個目錄名,預設為"zone"
page 對映為一個檔名,以為副檔名,預設為"page"
entry 對映為方法名,以Page開頭的方法名,預設為"entry"
appDir 應用程式目錄,預設為".",就是當前目錄
splitFlag 分割符,預設為"/"
inPath entry入口引數,陣列,下面會有更詳細的介紹
一、地址解析
$appDir/zone/下的pageEntry方法
你可以改變其預設規則
SlightPHP::setDefaultZone("user");
SlightPHP::setDefaultPage("profile");
SlightPHP::setDefaultEntry("update");
$appDir/user/裡的pageUpdate方法,其實就是
這個URL
二、高階地址解析-別名
如果加了這程式碼
SlightPHP::setZoneAlias("user","u");
會是一樣的效果
它的作用是增加user一個別名u
三、分隔符(splitFlag)
zone,page,entry的分隔預設是用/來分的,你可以改成自己想要的,如
SlightPHP::setSplitFlag(".")
就可以這樣訪問了
這樣的方式
你也可以這樣,用多個分割符
SlightPHP::setSplitFlag("-.")
和上面的是一樣
四、Apache Rewrite
在你的cess裡或者apache的配置檔案里加下類似程式碼
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1 [L]
你就可以直接這樣訪問了
如果你還加上了
SlightPHP::setSplitFlag(".");
那麼就可以用這樣的方式
五、短路由
如你要直接這樣,更短的地址
http://localhost/profile/update
請在apache的配置檔案里加上類似這樣的程式碼
RewriteRule ^(/profile/.*)$ /$1 [E=PATH_INFO:$1,L]
六、關於$inPath
$inPath[0] 就是當前的 zone的名字
$inPath[1] 就是當前的 page的名字
$inPath[2] 就是當前的 entry的名字
$inPath[...] 超過以前的就是後面更多的引數,如html是這樣的
$inPath=array("user","profile","update","other1","other2","...")
七、appDir,程式目錄設定
你可以自定義你的程式目錄
SlightPHP::setAppDir("/home/www/myAppdir");
就會執行
/home/www/myAppdir/user/下的pageUpdate方法
建議你的appDir目錄不要讓外部訪問到
八、外掛導航
SDb資料庫外掛
SCache快取外掛