日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

SlightPHP

發布時間:2023/11/27 生活经验 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SlightPHP 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?SlightPHP是一個輕量級的php框架,支持php5,和php模塊方式使用,和apc使用性能更高!

項目地址:http://code.google.com/p/slightphp/
源碼地址:http://slightphp.googlecode.com/svn/trunk/

你有兩種方法使用SlightPHP類:

一、使用普通的php方法

index.php的代碼如下:
<?php
require_once("SlightPHP.php");
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>

二、使用php模塊方法

index.php的代碼如下:
<?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
這樣的方式

他就會執行APP_DIR/$zone/$object.class.php的Page$method方法

你要做的就是建立 APP_DIR/$zone/$object.class.php文件,里面定議類名為$zone_$object的類和Page$method方法就行了,相當簡單!

APP_DIR/$zone/$object.class.php的代碼如下:

<?php
class $zone_$object{
? ? function Page$method(){}
}
?>
??
第一個示例,HelloWorld!

第一步:index.php文件內容
<?php
require_once("SlightPHP.php");
$SlightPHP = new SlightPHP;
$SlightPHP->run();
?>
第二步:請在index.php所在目錄下新建zone目錄,在zone目錄下新建default.class.php,源代碼如下:
<?php??
class zone_default{??
? ? function PageEntry($inPath){
? ?? ???echo "Hello, world!";
? ? }??
}??
?>
第三步:正常訪問你的index.php

?

SlightPHP 1.0 (正式發布!)

SlightPHP是一個輕量級的PHP框架,支持PHP5及以上版本。

成功案例

1.優酷網

http://lipton-icha.youku.com/

2.豬八戒

http://zhubajie.com

3.優酷電臺

http://youku.fm

4.其它

如果您正使用這個框架,請聯系我們,我們將會展示到這里

主要特點

1 支持模塊和普通方式加載,用模塊方式請編譯pecl目錄下的源碼?
2 支持數據庫讀寫庫分離?
3 支持ApacheRewrite,精簡URL?
4 擴展Sphinx?
5 核心代碼非常小,就6K,速度快效率高,幾乎和原生的一樣?
6 其它

Hello, world!

第一步 建立index.php

<?php?
require_once("SlightPHP.php");?
//或者你也可以用動態庫方式 dl("SlightPHP.so");?SlightPHP::run();??>

第二步 請在index.php所在目錄下新建zone目錄,在zone目錄下新建page.page.php

<?php ?
class zone_page{ ?function PageEntry($inPath){?echo "Hello, world!";?} ?
} ?
?>

第三步 請在你的地址欄里訪問index.php,如

http://localhost/index.php

基本概念

zone 映射為一個目錄名,默認為"zone"?
page 映射為一個文件名,以.page.php為擴展名,默認為"page"?
entry 映射為方法名,以Page開頭的方法名,默認為"entry"?
appDir 應用程序目錄,默認為".",就是當前目錄?
splitFlag 分割符,默認為"/"?
inPath entry入口參數,數組,下面會有更詳細的介紹

一、地址解析

這個地址 http://localhost/index.php

實際上和 http://localhost/index.php/zone/page/entry 一樣

會執行你的

$appDir/zone/page.page.php下的pageEntry方法

你可以改變其默認規則

SlightPHP::setDefaultZone("user");?
SlightPHP::setDefaultPage("profile");?
SlightPHP::setDefaultEntry("update");

當訪問 http://localhost/index.php 時,就會執行

$appDir/user/profile.page.php里的pageUpdate方法,其實就是

http://localhost/index.php/user/profile/update

這個URL

二、高級地址解析-別名

如果加了這代碼

SlightPHP::setZoneAlias("user","u");

你訪問這個地址

http://localhost/index.php/u/profile/update



http://localhost/index.php/user/profile/update

會是一樣的效果

它的作用是增加user一個別名u

三、分隔符(splitFlag)

zone,page,entry的分隔默認是用/來分的,你可以改成自己想要的,如

SlightPHP::setSplitFlag(".")

就可以這樣訪問了

http://localhost/index.php/user.profile.update

或者更好看,加上.html

http://localhost/index.php/user.profile.update.html

這樣的方式

你也可以這樣,用多個分割符

SlightPHP::setSplitFlag("-.")

http://localhost/index.php/user-profile-update.html

和上面的是一樣

四、Apache Rewrite

在你的.htaccess里或者apache的配置文件里加下類似代碼

RewriteEngine ? on?
RewriteCond %{REQUEST_FILENAME} !-f?
RewriteCond %{REQUEST_FILENAME} !-d?
RewriteRule ^(.*)$ index.php/$1 [L]

你就可以直接這樣訪問了

http://localhost/user/profile/update

如果你還加上了

SlightPHP::setSplitFlag(".");

那么就可以用這樣的方式 http://localhost/user.profile.update

五、短路由

如你要直接這樣,更短的地址

http://localhost/profile/update

請在apache的配置文件里加上類似這樣的代碼

RewriteRule ? ^(/profile/.*)$ /index.php/user/profile/update/$1 [E=PATH_INFO:$1,L]

六、關于$inPath

$inPath[0] 就是當前的 zone的名字?
$inPath[1] 就是當前的 page的名字?
$inPath[2] 就是當前的 entry的名字?
$inPath[...] 超過以前的就是后面更多的參數,如html

如 http://localhost/index.php/user/profile/update/other1/other2/... inPath是這樣的

$inPath=array("user","profile","update","other1","other2","...")

七、appDir,程序目錄設置

你可以自定義你的程序目錄

SlightPHP::setAppDir("/home/www/myAppdir");

如http://localhost/index.php/user/profile/update

就會執行

/home/www/myAppdir/user/profile.page.php下的pageUpdate方法

建議你的appDir目錄不要讓外部訪問到

八、插件導航

SDb數據庫插件

SCache緩存插件

更多插件功能請看samples下的示例

?

總結

以上是生活随笔為你收集整理的SlightPHP的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。