xoops2の起動プロセスに詳しくなろうね!(←自分)

順を追って書いていくことにするか。と書いていくことにしたけど、
やっぱシーケンス図とクラス図使ったほうが良かった。

まず、xoopsのHPにログインしようとしてアクセスすると、
こんな風に処理が行われているようでR。。。

■index.php(スタートページ)

■mainfile.php(各種パラメータを設定する。DBの名前etc)

■/include/common.php (メソッド実行の中心的ファイル)

■/class/errorhandler.php
XoopsErrorHandlerクラス
{
XoopsErrorHandler ()
&getInstance () ←XoopsErrorHandler()のインスタンス作成
activate ($showErrors=false)
handleError ($error)
renderErrors ()
}
XoopsErrorHandler_HandleError()
XoopsErrorHandler_Shutdown()

■/class/logger.php
ページリクエスト情報を収集。
データベースのクエリーとブロック、実行時間を記録してHTMLで表示できる。
XoopsLoggerクラス
&instance()
startTime()

■/include/functions.php
xoopsで良く使う関数群をまとめたファイル
関数の使い方は「Marijuana's Xoopsサイト」に丁寧に書いてあります。
http://marijuana.ddo.jp/modules/marixoops/index.php?fid=5

function xoops_header($closehead=true) ← XOOPSのヘッダーを出力
function xoops_footer() ←ob_end_flushで出力バッファを送信する。
function xoops_error($msg, $title='') ←エラーを出力する
function xoops_result($msg, $title='') ←結果を出力する
function xoops_confirm($hiddens, $action, $msg, $submit='')
function xoops_refcheck($docheck=1)
function xoops_getUserTimestamp($time, $timeoffset="")
function formatTimestamp($time, $format="l", $timeoffset="")
function userTimeToServerTime($timestamp, $userTZ=null)
function xoops_makepass()
function OpenWaitBox()
function CloseWaitBox()
function checkEmail($email,$antispam = false)
function formatURL($url)
function showbanner()
function xoops_getbanner()
function redirect_header($url, $time = 3, $message = '', $addredirect = true)
function xoops_getenv($key)
function getTheme()
function getcss($theme = '')
function xoops_getcss($theme = '')
function &getMailer()
function &xoops_gethandler($name, $optional = false )
function &xoops_getmodulehandler($name = null, $module_dir = null, $optional = false)
function xoops_getrank($rank_id =0, $posts = 0)
function xoops_substr($str, $start, $length, $trimmarker = '...')

  • Notification(お知らせ)補助関数
    • function xoops_notification_deletebymodule ($module_id)
    • function xoops_notification_deletebyuser ($user_id)
    • function xoops_notification_deletebyitem ($module_id, $category, $item_id)
  • コメント補助関数
    • function xoops_comment_count($module_id, $item_id = null)
    • function xoops_comment_delete($module_id, $item_id)
  • グループ権限補助関数
    • function xoops_groupperm_deletebymoditem($module_id, $perm_name, $item_id = null)
    • function &xoops_utf8_encode(&$text)
    • function &xoops_convert_encoding(&$text)
    • function xoops_getLinkedUnameFromId($userid)
    • function xoops_trim($text)



■/class/database/databasefactory.phpを読込む

class XoopsDatabaseFactory
データベースクラスのインスタンスに照会して接続するメソッド。
function &getDatabaseConnection()
照会するけど、DBに接続しないメソッド。
function &getDatabase()

■XoopsDatabaseFactory::getDatabaseConnection()を実行する。
(続く)