開源微博系統Xweibo的一些主要函式注釋

2021-08-25 14:54:52 字數 4576 閱讀 5903

d:\program files\apache\htdocs\code

config.php //配置些全域性變數,系統版本等

init.php //框架初始化檔案

cfg.php //框架配置檔案,包括各個功能塊的目錄路徑

compat.php //框架相容類,包括定義給個function。

d:\program files\apache\htdocs\code\sae_install

index.php //

/*** @param $halt 執行完請求後是否退出

* @return 無返回值

*//**

* @param $is_acc 是否以陣列的形式返回

* @return requestroute

*//**

* @param $doroute 模組路由,如 demo/index.show

* @param $type 模組型別,可選值為: m , f , c ; 分別表示 模組 函式 和 類庫

* @param $args 模組所需要的引數,統一用資料傳遞,$type 為 m 時無效

* @param $except 例外模組,在這些模組中 將不執行此預處理程式 預設為空 可以是陣列或者字串

* @return 無返回值

*//**

* 根據模組路由,query 資料 ,入口程式,生成url,

* @param $mroute 模組路由,如 demo/index.show

* @param $qdata 新增在url後面的引數,可以是陣列或者字串,

* 如 array('a'=>'a_var') 或者 "a=a_var&b=b_var"

* @param $entry 入口程式名,預設獲取當前入口程式,如: index.php admin.php

* @return 生成的url

*//// 資料互動元件的快捷訪問方法 呼叫函式 dsmgr::call, 返回標準返回值結構,可自行處理錯誤

function dr()

* 失敗結果 :

* @param $rst

* @param $errno 錯誤**,預設為 0 ,表示正常執行請求, 或者 >0 的 5位數字 ,1 開頭的系統保留

* @param $err 錯誤資訊,預設為空

* @param $return 是否直接返回資料,不輸出

* @return unknown_type

*/* 顯示乙個訊息,並定時跳轉

* @param $params array

* ['msg'] 顯示訊息,

* ['location'] 跳轉位址,

* ['timeout'] = 3 跳轉時長 ,0 則不跳轉 此時 location 無效

* ['tpl'] = '' 使用的模板名,

* 如果$params不是陣列,則直接當作 $params['msg'] 處理

* @param $display boolean 是否即時輸出

*//**

* tpl::assign($k,$v=null);

* 給模板變數賦值,類似smarty

* 使用例項:

* tpl::assign('var_name1','var'); 在模板中可以使用 $var_name1 變數

* tpl::assign(array('var_name2'=>'var')); 在模板中可以使用 $var_name2 變數

* @param $k 當 $k 為字串時 在模板中 可使用以 $k 命名的變數 其值 為 $v

* 當 $k 為關聯陣列時 在模板中可以使用 $k 的所有索引為變數名的變數

* @param $v 當 $k 為字串時 其值 即為 模板中 以 $k 為名的變數的值

* @return 無返回值

*//**

* tpl::display($tpl, $langs=array(), $ttl=0, $tpldir="");

* 顯示乙個模板

* @param $tpl 模板路由

* @param $langs 語言包,可以是半形逗號隔開的列表,也可以是陣列

* @param $ttl 快取時間 單位秒 ( 未實現 )

* @param $baseskin 模板基準目錄選項,預設為 true ,將使用系統配置的**目錄

* @return 無返回值

*//**

* tpl::fetch($tpl,$langs=array(),$ttl=0, $tpldir="");

* 獲取乙個模板解釋完後的內容

* @param $tpl 模板路由

* @param $langs 語言包,可以是半形逗號隔開的列表,也可以是陣列

* @param $ttl 快取時間 單位秒 ( 未實現 )

* @param $baseskin 模板基準目錄選項,預設為 true ,將使用系統配置的**目錄

* @return 模板解釋完後的內容,字串

*//**

* 輸出或者獲取乙個 html 外掛程式

* @param $tpl 模板路由

* @param $args 外掛程式變數,是乙個關聯陣列,在外掛程式模板中,陣列的下標即是變數名

* @param $baseskin 模板基準目錄選項,預設為 true ,將使用系統配置的**目錄

* @param $output 是否直接輸出外掛程式html**,當其為false時,返回外掛程式內容

* @return 相應的 html 外掛程式**

*//** * @param $mroute 模組路由

* @param $qdata url 引數可以是字串如 "a=***&b=ooo" 或者陣列 array('k'=>'k_var')

* @param $entry 模組入口 預設為當前入口,可指定入口程式 如 admin.php

* @return url

*//**

* 呼叫乙個資料互動方法、動作 dsmgr::call($dsroute, $opt); 同名快捷函式為 ds($dsroute, $opt);

* @param $ehandler 是否自動處理錯誤資訊,預設為 true

* 設定為 true 時,將自動處理錯誤資訊,並且退出程式,返回值為:真實資料結果

* 設定為 false 時,將忽略錯誤,直接返回標準結果格式,返回值為:用 rst 封裝過的標準結果結構

* @param $dsroute 資料互動元件的路由

* @param $opt 資料互動的快取與過濾策略,預設為空,不做任何快取與過慮,

* 其規則如下:

* [快取組/]快取時間[|過濾函式]

*

* 快取組,過濾函式 都是可選的,快取時間為空表示不快取,為0表示永久快取,其它數值表示快取的秒數

* 快取組的可能值為: 空 、 i 、 g0,g1... 、 p0,p1... 、 s0,s1.... 、 u

* 如: $opt = 123 表示當前資料的呼叫會被快取 123 秒

* $opt = 'g1/223' 表示對當資料件互動產生快取組,每個快取週期是 223 秒

* g1 表示根據資料呼叫元件的第乙個引數作為標識,同理 g2,g3,g4

* g0 表示根據資料呼叫元件的所有引數作為標識

* $opt = 'g2/0|format_func1|format_func2'

* 表示,當前呼叫將會用第2個引數建立快取組,建立永久快取,第一次取資料時,

* 會依次用函式庫的 format_func1,format_func2 對元件資料進行格式化或者過濾處理

*

* $opt = '|format_func';

* 表示,當前呼叫不快取,但需要使用 format_func 進行格式化或者過濾處理

* * $opt = '0|format_func' 以上例不同,此呼叫將做永久快取

* * @return 見 $ehandler 說明

*//** * 格式化元件返回值,資料元件的返回值都要通過此函式格式化後返回

* @param $rst 結果資料

* @param $errno 錯誤**,預設為 0 無錯誤,其它值為相應的錯誤**

* @param $err 錯誤資訊,預設為空,

* @param $level 錯誤級別,預設為 0 , $err 將直接顯示給使用者看,如果為 1 則不顯示給使用者看,統一為提示為 系統繁忙,請稍後再試...

* @param $log 當資料層需要 元件管理中心 寫日誌時,給出值,預設為空,不寫日誌

* $return 返回標準的 rst 結果集

*/function rst($rst, $errno=0, $err='', $level=0, $log=''){

覺得微博的行業細分,和資訊的有效分類是非常好的乙個方向。

一些開源的東東

開源真是個好東東,看開源的 不僅能夠提高自己的程式設計水平還可以大大的節省自己的時間。可惜的是許多出名的開源類庫全是外國人寫的,希望中國人自己也能夠有自己的開源類庫。我玩過的一些有用的開源的類庫 有些我只是玩了一下,所以不能很深的介紹 希望對大家有幫助。1 首先出場的是ace。我想大家在設計網路程式...

一些開源協議

gpl 如果使用他人的遵循gpl協議的軟體整合到你自己的軟體中,你自己的軟體自動遵循gpl協議,必須允許任何人免費使用你的軟體。對於你自己的程式源 你可以免費散發,也可以收取一定的費用。lgpl 主要用於一些庫函式,設計它的初衷是想讓它可以被一些商業軟體所使用,擴大它的應用範圍。可以設計使用遵循lg...

一些開源協議

gpl 如果使用他人的遵循gpl協議的軟體整合到你自己的軟體中,你自己的軟體自動遵循gpl協議,必須允許任何人免費使用你的軟體。對於你自己的程式源 你可以免費散發,也可以收取一定的費用。lgpl 主要用於一些庫函式,設計它的初衷是想讓它可以被一些商業軟體所使用,擴大它的應用範圍。可以設計使用遵循lg...