- 相關(guān)推薦
SlightPHP的使用技巧
SlightPHP是一個輕量級的php框架,支持php5,和php模塊方式使用,和apc使用性能更高,下面是小編為大家搜索整理的SlightPHP的使用技巧,希望能給大家?guī)韼椭?更多精彩內(nèi)容請及時關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
有兩種方法使用SlightPHP類:
一、使用普通的php方法
index.php的代碼如下:
require_once("SlightPHP.php");
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>
二、使用php模塊方法
index.php的代碼如下:
if(!extension_loaded('SlightPHP')) {
if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')) {
$rt = dl('SlightPHP.dll');
} else {
$rt = dl('SlightPHP.so');
}
if($rt===false){
die("skip");
}
}
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>
那么你就可以這樣訪問
index.php/$zone/$object/$method
這樣的方式
他就會執(zhí)行APP_DIR/$zone/$object.class.php的Page$method方法
你要做的就是建立 APP_DIR/$zone/$object.class.php文件,里面定議類名為$zone_$object的類和Page$method方法就行了,相當(dāng)簡單!
APP_DIR/$zone/$object.class.php的代碼如下:
class $zone_$object{
function Page$method(){}
}
?>
第一個示例,HelloWorld!
第一步:index.php文件內(nèi)容
require_once("SlightPHP.php");
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>
第二步:請在index.php所在目錄下新建zone目錄,在zone目錄下新建default.class.php,源代碼如下:
class zone_default{
function PageEntry($inPath){
echo "Hello, world!";
}
}
?>
第三步:正常訪問你的index.php
SlightPHP 1.0 (正式發(fā)布!)
SlightPHP是一個輕量級的PHP框架,支持PHP5及以上版本。
主要特點
1 支持模塊和普通方式加載,用模塊方式請編譯pecl目錄下的源碼
2 支持?jǐn)?shù)據(jù)庫讀寫庫分離
3 支持Apache的Rewrite,精簡URL
4 擴展Sphinx類
5 核心代碼非常小,就6K,速度快效率高,幾乎和原生的一樣
6 其它
Hello, world!
第一步 建立index.php
require_once("SlightPHP.php");
//或者你也可以用動態(tài)庫方式 dl("SlightPHP.so");
SlightPHP::run();
?>
第二步 請在index.php所在目錄下新建zone目錄,在zone目錄下新建page.page.php
class zone_page{
function PageEntry($inPath){
echo "Hello, world!";
}
}
?>
第三步 請在你的地址欄里訪問index.php,如
http://localhost/index.php
基本概念
zone 映射為一個目錄名,默認(rèn)為"zone"
page 映射為一個文件名,以.page.php為擴展名,默認(rèn)為"page"
entry 映射為方法名,以Page開頭的方法名,默認(rèn)為"entry"
appDir 應(yīng)用程序目錄,默認(rèn)為".",就是當(dāng)前目錄
splitFlag 分割符,默認(rèn)為"/"
inPath entry入口參數(shù),數(shù)組,下面會有更詳細(xì)的介紹
一、地址解析
$appDir/zone/page.page.php下的pageEntry方法
你可以改變其默認(rèn)規(guī)則
SlightPHP::setDefaultZone("user");
SlightPHP::setDefaultPage("profile");
SlightPHP::setDefaultEntry("update");
$appDir/user/profile.page.php里的pageUpdate方法,其實就是
這個URL
二、高級地址解析-別名
如果加了這代碼
SlightPHP::setZoneAlias("user","u");
會是一樣的效果
它的作用是增加user一個別名u
三、分隔符(splitFlag)
zone,page,entry的分隔默認(rèn)是用/來分的,你可以改成自己想要的,如
SlightPHP::setSplitFlag(".")
就可以這樣訪問了
這樣的方式
你也可以這樣,用多個分割符
SlightPHP::setSplitFlag("-.")
和上面的是一樣
四、Apache Rewrite
在你的.htaccess里或者apache的配置文件里加下類似代碼
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
你就可以直接這樣訪問了
如果你還加上了
SlightPHP::setSplitFlag(".");
那么就可以用這樣的方式
五、短路由
如你要直接這樣,更短的地址
http://localhost/profile/update
請在apache的配置文件里加上類似這樣的代碼
RewriteRule ^(/profile/.*)$ /index.php/user/profile/update/$1 [E=PATH_INFO:$1,L]
六、關(guān)于$inPath
$inPath[0] 就是當(dāng)前的 zone的名字
$inPath[1] 就是當(dāng)前的 page的名字
$inPath[2] 就是當(dāng)前的 entry的名字
$inPath[...] 超過以前的就是后面更多的參數(shù),如html是這樣的
$inPath=array("user","profile","update","other1","other2","...")
七、appDir,程序目錄設(shè)置
你可以自定義你的程序目錄
SlightPHP::setAppDir("/home/www/myAppdir");
就會執(zhí)行
/home/www/myAppdir/user/profile.page.php下的pageUpdate方法
建議你的appDir目錄不要讓外部訪問到
八、插件導(dǎo)航
SDb數(shù)據(jù)庫插件
SCache緩存插件
【SlightPHP的使用技巧】相關(guān)文章:
使用NPM的技巧08-23
PowerPoint使用技巧10-10
Dreamweaver空格使用技巧05-24
PHOTOSHOP使用技巧分享06-03
Wifi的使用小技巧08-10
shift鍵使用技巧08-31
firework使用技巧總結(jié)07-04
WPS使用技巧大全06-25
Dreamweaver空格使用的方法技巧06-08
制作CDR結(jié)核的使用技巧05-08