【Wakarana】カスタムフィールド値の取得と編集
Wakaranaで、各ユーザーのカスタムフィールド値の取得と編集を行うサンプルコードです。カスタムフィールドは、1ユーザーあたりの値の上限個数が1個のものと2個以上のものとで扱いが異なっており、各ユーザー1個しか登録できないカスタムフィールド値は、wakarana_user::get_valueで単純文字列として取得したり、wakarana_user::set_valueでシンプルな上書きが可能となっている一方、値を2個以上登録できるカスタムフィールドでは、値の取得はwakarana_user::get_valuesを使用した配列(並び順は、値の追加時に指定可能)としての取得に限定され、値の上書きはwakarana_user::update_valueで順序番号を指定して行う必要が生じます。
sample.php
<?php
include "wakarana/main.php";
$wakarana = new wakarana();
$user_id = "hoge";
// wakarana_userオブジェクトの取得
$user = $wakarana->get_user($user_id);
// 上限個数が1個のみに設定されているカスタムフィールドはget_valueで取得可能
print "カスタムフィールドfuga: ".$user->get_value("fuga")."<br>";
// 上限個数に関わらず、指定したカスタムフィールドの全値を取得する
$piyo_values = $user->get_values("piyo");
foreach ($piyo_values as $piyo_value) {
print "カスタムフィールドpiyo: ".$piyo_value."<br>";
}
// 上限個数が1個のみに設定されているカスタムフィールドはset_valueで値を設定
$user->set_value("fuga", "abcd1234");
// 上限個数が2個以上に設定されているカスタムフィールドに値を追加する
$user->add_value("piyo", "efgh5678");
// カスタムフィールドの指定した順序の位置に値を追加する(この例では先頭となる1番を指定)
$user->add_value("piyo", "ijkl9012", 1);
// 上限個数が2個以上に設定されているカスタムフィールドの値を書き換える(この例では順序2番を書き換え)
$user->update_value("piyo", 2, "mnop3456");
// 並び順番号を指定してカスタムフィールド値を削除
$user->delete_value("piyo", 2);
// 値を指定してカスタムフィールド値を削除
$user->remove_value("piyo", "ijkl9012");
// 全てのカスタムフィールド値の削除
$user->delete_value("piyo");