wakarana_profile
データベース接続や各種設定値を保持するクラス。設定ファイルの書き込み機能は持たない。このクラスはwakaranaやwakarana_configといった他のクラスが内部で使用するためのものであるため、このクラスの関数を直接呼び出すべきではない。
- 関数
- ◆ wakarana_profile::__construct
- ☆ wakarana_profile::of
- wakarana_profile::get_base_path
- wakarana_profile::load_config
- wakarana_profile::get_config
- wakarana_profile::set_config
- wakarana_profile::connect_db
- wakarana_profile::begin_transaction
- wakarana_profile::commit_transaction
- wakarana_profile::rollback_transaction
- wakarana_profile::disconnect_db
- wakarana_profile::load_custom_field_definitions
- wakarana_profile::get_custom_field_names
- wakarana_profile::get_custom_field_definition
- wakarana_profile::set_custom_field_definition
- wakarana_profile::generate_config_cache
- wakarana_profile::get_email_domain_blacklist
- wakarana_profile::add_email_domain_to_blacklist
- wakarana_profile::remove_email_domain_from_blacklist
- wakarana_profile::set_email_domain_blacklist
関数
◆ wakarana_profile::__construct($base_path)
指定したフォルダにある設定ファイル(wakarana_integrated_config_cache.phpが存在すればそのファイル、そうでなければwakarana_config.iniとwakarana_custom_fields.json)をロードし、wakarana_profileインスタンスを生成する。設定ファイルがロードできなかった場合は例外が発生する。
◆クラス内呼び出し専用。
$base_path : wakarana_config.iniのあるフォルダの絶対パス。
☆ wakarana_profile::of($base_dir=NULL)
指定したフォルダにある設定ファイル類をロードし、wakarana_profileインスタンスを生成して返す。既に同じフォルダを指定して生成されたインスタンスが存在する場合は、新しいインスタンスを生成せずに既存のものを返す。
設定ファイルがロードできなかった場合は例外が発生する。
☆staticメソッド。
$base_dir : wakarana_config.iniのあるフォルダの相対パスまたは絶対パス。省略時はwakarana_profile.phpのあるフォルダを使用する。
返り値 : 成功した場合はwakarana_profileインスタンスを返す。
wakarana_profile::get_base_path()
インスタンス生成時に指定されたベースフォルダのパスを取得する。返り値 : インスタンスが参照しているwakarana_config.iniがあるフォルダの絶対パスを返す。
wakarana_profile::load_config($config_path)
wakarana_config.iniを読み込み、その内容をインスタンス変数に保持する。失敗した場合は例外が発生する。
$config_path : wakarana_config.iniのパス
返り値 : 成功した場合はTRUEを返す。
wakarana_profile::get_config($key)
wakarana_config.iniの設定値を取得する。$key : wakarana_config.iniの項目名
返り値 : wakarana_config.iniの設定値を返す。存在しない項目名が指定された場合はNULLを返す。
wakarana_profile::set_config($key, $value)
wakarana_config.iniの設定値を一時的に上書きする。この関数によりストレージ上のwakarana_config.iniが変更されるわけではない。
wakarana_config.iniの設定値を変更する場合はこの関数でなく wakarana_config::set_config_value を使用すべきである。
$key : wakarana_config.iniの項目名
$value : 設定する値
返り値 : 成功した場合はTRUEを返し、存在しない項目名が指定された場合はFALSEを返す。
wakarana_profile::connect_db()
wakarana_config.iniの設定に基づき、データベースに接続する。失敗した場合は例外が発生する。
返り値 : 成功した場合はTRUEを返す。
wakarana_profile::begin_transaction()
データベースでトランザクションを開始する。既に別のトランザクションが実行中の場合、内部的には新規のトランザクションではなくセーブポイントを作成する。
失敗した場合は例外が発生する。
返り値 : 成功した場合はTRUEを返す。
wakarana_profile::commit_transaction()
データベースで最後に開始したトランザクション(またはセーブポイント)を完了する。まだ解決していないトランザクションが存在する場合、内部的にはセーブポイントを破棄するのみでコミット処理を行わない。
失敗した場合は例外が発生する。
返り値 : 成功した場合はTRUEを返す。
wakarana_profile::rollback_transaction()
データベースで最後に開始したトランザクション(またはセーブポイント)での変更内容を取り消す。失敗した場合は例外が発生する。
返り値 : 成功した場合はTRUEを返す。
wakarana_profile::disconnect_db()
データベースとの接続を終了する。返り値 : 成功した場合はTRUEを返す。
wakarana_profile::load_custom_field_definitions($custom_fields_file_path)
wakarana_custom_fields.jsonを読み込み、その内容をインスタンス内に保持する。$custom_fields_file_path : wakarana_custom_fields.jsonのパス
返り値 : 成功した場合はTRUE、失敗した場合はFALSEを返す。
wakarana_profile::get_custom_field_names()
ユーザーデータに追加可能なカスタムフィールド名一覧を取得する。返り値 : wakarana_custom_fields.jsonのキー一覧を配列で返す。
wakarana_profile::get_custom_field_definition($custom_field_name=NULL)
指定したカスタムフィールドの設定を連想配列で取得する。$custom_field_name : カスタムフィールド名。NULLを指定した場合は全てのカスタムフィールドの設定をカスタムフィールド名をキーとする連想配列にまとめて返す。
返り値 : 指定したカスタムフィールド名に対応する設定がwakarana_custom_fields.jsonに存在する場合、その内容を連想配列(キーは、"is_numeric"、"maximum_length"、"records_per_user"、"allow_nonunique_value")で返す。カスタムフィールド名が存在しなければNULLを返す。
wakarana_profile::set_custom_field_definition($custom_field_name, $custom_field_definition)
指定したカスタムフィールドの設定を一時的に上書きする。この関数によりストレージ上のwakarana_custom_fields.jsonが変更されるわけではない。
カスタムフィールドの設定を変更する場合は、この関数でなく wakarana_config::create_custom_field または wakarana_config::create_custom_numerical_field を使用すべきである。
$custom_field_name : カスタムフィールド名
$custom_field_definition : カスタムフィールドの情報を格納した連想配列(キーは、"is_numeric"、"maximum_length"、"records_per_user"、"allow_nonunique_value")。NULLを指定した場合は当該のカスタムフィールドを削除する。
返り値 : 成功した場合はTRUEを返す。存在しないカスタムフィールドを削除しようとしたときはNULLを返す。
wakarana_profile::generate_config_cache()
インスタンス変数に保持されている基本設定とカスタムフィールド設定をベースフォルダ内にキャッシュPHPファイル(wakarana_integrated_config_cache.php)として書き出す。既に同名のPHPファイルが存在する場合は上書きする。
返り値 : 成功した場合はTRUE、失敗した場合はFALSEを返す。
wakarana_profile::get_email_domain_blacklist()
メールドメインブラックリストを配列形式で返す。メールドメインブラックリストがインスタンス変数に読み込まれていなければ、ファイルから読み込む。
返り値 : メールドメインブラックリストのドメインを配列で返す。メールドメインブラックリストの読み込みに失敗した場合はFALSEを返す。
wakarana_profile::add_email_domain_to_blacklist($damain_name)
ドメインをメールドメインブラックリストへ一時的に追加する。この関数によりストレージ上のwakarana_email_domain_blacklist.confが変更されるわけではない。
wakarana_email_domain_blacklist.confの内容を変更する場合はこの関数でなく wakarana_config::add_email_domain_to_blacklist を使用すべきである。
$domain_name : ブラックリストに追加するドメイン名
返り値 : 成功した場合はTRUEを返す。
wakarana_profile::remove_email_domain_from_blacklist($list_index)
メールドメインブラックリストから指定した行にあるドメインを一時的に除外する。この関数によりストレージ上のwakarana_email_domain_blacklist.confが変更されるわけではない。
wakarana_email_domain_blacklist.confの内容を変更する場合はこの関数でなく wakarana_config::remove_email_domain_from_blacklist を使用すべきである。
$list_index : ブラックリストから除外する行の番号(0始まり)
返り値 : 成功した場合はTRUE、失敗した場合はFALSEを返す。
wakarana_profile::set_email_domain_blacklist($email_domain_blacklist)
メールドメインブラックリストを一時的に上書きする。この関数によりストレージ上のwakarana_email_domain_blacklist.confが変更されるわけではない。
wakarana_email_domain_blacklist.confの内容を変更する場合はこの関数でなく wakarana_config::replace_email_domain_blacklist を使用すべきである。
$email_domain_blacklist : メールドメイン文字列を格納した配列
返り値 : 成功した場合はTRUEを返す。
