class_core.php モジュール関数のホワイト ペーパー
source/class/class_core.php は、Discuz! の一般的な初期化モジュール プログラムであり、ほとんどすべての外部コードによって参照されます。プラグインの設計を開始する前に、まずこの一般的な機能をある程度理解することができます。モジュール。 class_core.php は主に次のタスクを実行します。
- Discuz! は、さまざまな構成のさまざまなサーバー環境で実行できるように、さまざまな PHP およびオペレーティング システム環境での判定と互換性処理を行いました。
- 定数 IN_DISCUZ を TRUE に初期化します。これは、他のプログラムへの不正な参照を避けるために、後続のプログラムを含めるか要求するかを判断するために使用されます。
- コミュニティプログラムの絶対パスを読み取り、定数DISCUZ_ROOTに格納します。
- 必要な基本関数ライブラリsource/function/function_core.phpをロードします。
- config/config_global.php で提供されるデータベース アカウント情報を使用してデータベース接続を確立します。 Discuz! は、データ テーブルのプレフィックスをサポートしています。テーブルの完全な名前を取得する必要がある場合は、「DB::table('tablename')」メソッドを使用できます。
- ユーザーがログインしているかどうかを判断します。ログインフラグ $_G['uid'] が 0 以外の場合、$_G['username'] (追加
addslashes のユーザー名は、変更せずにデータベースに挿入するために使用できます)、
$_G['member']['username'] (元のユーザー名、ページ表示に使用可能)、$_G['member']['password'] (ユーザーのパスワード)
MD5 文字列) およびその他の対応するユーザー情報が $_G['member'] に格納されます。詳細は「getuserprofile()」で取得できます。
- ユーザーの管理権限を決定し、管理権限 $_G['adminid'] を 1 ~ 3 の値としてマークします。 0 は一般ユーザーを表し、1 はフォーラム管理者を表します。
スーパーモデレーターを表し、3 はフォーラムモデレーターを表します。 ユーザーが属するメイン ユーザー グループ ID に従ってユーザー権限を $_G['groupid'] としてマークします。関連する権限はここから取得します。
$_G['groupid'] に対応するシステム キャッシュから読み取り、$_G['group'] に保存します。
- プリセットは、各モジュールのさまざまな設定変数を読み込みます。