目次

  1. ライブラリファイル
  2. データベース関連の関数
  3. アプリの共有設定の読み書き
  4. セッション関連の関数
  5. ユーザーの個人設定の読み書き

ライブラリファイル

// DBサーバの設定を読み込む
require_once("dbconfig.php");

// ライブラリ関数の定義を読み込む
require_once("func.php");

データベース関連の関数

// ※以下 $dbname はデータベース名、$tblname はテーブル名とする。

// データベース名の一覧を配列に得る
$list = get_database_list();

// 指定したデータベースが存在すればtrueを返す
$found = find_database($dbname);

// テーブル名の一覧を配列に得る
$list = get_table_list($dbname);

// 指定したテーブルが存在すればtrueを返す
$found = find_table($dbname, $tblname);

// テーブルが存在しなければ作成する(あれば何もしない)
// $columns: カラムの設定をカンマ区切りで結合した文字列
// $comment: テーブルの説明文
check_table($dbname, $tblname, $columns, $comment);

// テーブルが存在すれば削除する(なければ何もしない)
delete_table($dbname, $tblname);

// テーブルにデータを1行追加する
// $data: (項目名=>値)の連想配列
// 戻り値: 成功ならtrue、失敗(=unique属性で重複発生)ならfalse
$success = add_table_data($dbname, $tblname, $data);

// テーブルからデータを得る
// $filter: SQLの「where val>=100」などの条件式
// ($filterは省略可能で、省略すると全データを取得する)
// 戻り値: 条件が成立した行データの配列
$list = get_table_data($dbname, $tblname, $filter="");

// テーブルからデータを削除する
// $filter: SQLの「where val>=100」などの条件式
// 条件が成立した行を削除する
// 戻り値: 削除された行数
$count = delete_table_data($dbname, $tblname, $filter);

// テーブルの行数を得る
$count = count_table($dbname, $tblname)

// テーブルの説明文を得る
$comment = get_table_comment($dbname, $tblname)

// テーブルの説明文を変更する
// この関数でテーブルの説明文を後から変更することもできる
set_table_comment($dbname, $tblname, $comment)

アプリの共有設定の読み書き

// 全ユーザー共通の設定を保存したり取得する
// 内部的には"app_vars"テーブルで管理している

// app_varsテーブルがなければ作成する
// すでに存在すれば何もしない
check_var_table();

// 名前が$nameの変数からデータを読み出す
// $nameが未登録ならnullを返す
$value = get_var($name);

// 名前が$nameの変数にデータ$valueを書き込む
set_var($name, $value);

// 名前が$nameの変数を削除する
delete_var($name);

セッション関連の関数

// セッションを利用すると、異なるPHPスクリプト間でデータを簡単に受け渡せる
// スクリプトを越えて利用可能な変数をここでは「セッション変数」と呼ぶ

// セッションを開始する
// $lifetime: セッションの有効期間(秒)、省略時は0
// $root: セッションのルートフォルダ、省略時はカレントフォルダ
start_my_session($lifetime = 0, $root = null);

// 名前が$nameのセッション変数から値を読み出し、変数を削除する
// 読み出した後に変数を削除するので、次回からはnullを返す
$value = get_session_var($name);

// 名前が$nameのセッション変数から値を読み出す
// この関数は変数を削除しないので、何回でも読み出せる
$value = peek_session_var($name);

// 名前が$nameのセッション変数にデータ$valueを書き込む
set_session_var($name, $value);

// 名前が$nameのセッション変数を削除する
delete_session_var($name);

ユーザーの個人設定の読み書き

// ユーザーの個人設定を保存したり取得する
// 内部的に「{$app_id}_user_vars」という名前のテーブルが作られる
// ※ここで$app_idはアプリ識別名とする

// アプリ$app_idに関するユーザー変数テーブルを作成する
// すでに存在すれば何もしない
// $comment: ユーザー変数テーブルの説明文
check_user_var_table($app_id, $comment);

// アプリ$app_idに関するユーザー変数テーブルを削除する
// すでになければ何もしない
delete_user_var_table($app_id);

// 名前が$nameのユーザー変数からデータを読み出す
// $nameが未登録ならnullを返す
$value = get_user_var($app_id, $user_id, $name);

// 名前が$nameのユーザー変数にデータ$valueを書き込む
set_user_var($app_id, $user_id, $name, $value);

// 名前が$nameのユーザー変数を削除する
delete_user_var($app_id, $user_id, $name);

// ユーザー設定をまとめて読み出す
// 戻り値: (変数名=>値)からなる連想配列
$data = get_user_data($app_id, $user_id);

// ユーザー設定をまとめて保存する
// $data: (変数名=>値)からなる連想配列
set_user_data($app_id, $user_id, $data);

// ユーザー設定を削除する
// $filter: SQLの「where id=123」などの条件式
// 条件が成立したユーザー設定を削除する
// 戻り値: 削除された行数
$count = delete_user_data($app_id, $filter);