Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

PHPからGroongaを利用する - GColumnクラス

More than 5 years have passed since last update.

GColumnクラス

PHP bindings for Groonga.

GColumn {
  /* メソッド */
  public void __construct(Groonga object, string name)
  public void __destruct(void)
  public void __set(string key, string value)
  public string __get(string key)
  public GColumn flags(string value)
  public GColumn type(string value)
  public GColumn source(string value)
  public GColumn create(void)
  public GColumn remove(void)
  public GColumn rename(string value)
}

コンストラクタ GColumn::__construct

クラスの生成

$column = new GColumn(gtable, 'follower');

引数

名前 概要
object GTable GTableオブジェクト
name string テーブル名

戻り値

なし

  $gdb = new Groonga('./db/test.db');

  $talbe = $gdb->table('Users');

  $column = $talbe->column('follower');

  print_r($column);

結果

GColumn Object
(
)

セッター GColumn::__set

変数へデータを設置する

$column->__set('name', 'follower');

引数

名前 概要
key string 変数名
value string

戻り値

なし

  $gdb = new Groonga('./db/test.db');

  $talbe = $gdb->table('Users');

  $column = $talbe->column('follower');
  $column->flags = 'COLUMN_VECTOR';

ゲッター GColumn::__get

変数を取得する

$column->__get('flags');

引数

名前 概要
key string 変数名

戻り値

string 変数の値

  $gdb = new Groonga('./db/test.db');

  $talbe = $gdb->table('Users');

  $column = $talbe->column('follower');
  $column->flags = 'COLUMN_VECTOR';
  echo $column->flags;

結果

COLUMN_VECTOR

変数の設定 GColumn::***(string value)

$column->flags('COLUMN_SCALAR')
       ->type('Users')
       ->source('follower')

引数

名前 概要
value string 設定値

戻り値

失敗した場合false
成功時GColumnオブジェクト

  $gdb = new Groonga('./db/test.db');

  /* column_create --table Users --name followee --flags COLUMN_INDEX --type Users --source follower */
  $table = $gdb->table('Users');
  $column = $table->column('followee');
  $column->flags('COLUMN_INDEX')
         ->type('Users')
         ->source('follower')
         ->create();

カラム作成 GColumn::create

カラムを作成する

$column->create();

戻り値

失敗した場合false
成功時GColumnオブジェクト

  $gdb = new Groonga('./db/test.db');

  /* column_create --table Users --name followee --flags COLUMN_INDEX --type Users --source follower */
  $table = $gdb->table('Users');
  $column = $table->column('followee');
  $column->flags('COLUMN_INDEX')
         ->type('Users')
         ->source('follower')
         ->create();

カラム削除 GColumn::remove

カラムを削除する

$column->remove();

戻り値

失敗した場合false
成功時GColumnオブジェクト

  $gdb = new Groonga('./db/test.db');

  $table = $gdb->table('Users');
  $column = $table->column('followee');
  $column->remove();

カラム名変更 GColumn::rename

カラム名を変更する

$column->remove('user');

引数

名前 概要
new_name string 新カラム名

戻り値

失敗した場合false
成功時GColumnオブジェクト

  $gdb = new Groonga('./db/test.db');

  $table = $gdb->table('Users');
  $column = $table->column('followee');
  $column->remove('followee2');

PHPからGroongaを利用する-Groongaクラス
PHPからGroongaを利用する-GCommandクラス
PHPからGroongaを利用する-GTableクラス
PHPからGroongaを利用する-GColumnクラス
PHPからGroongaを利用する-GLoadクラス
PHPからGroongaを利用する-GDeleteクラス
PHPからGroongaを利用する-GSelectクラス

PHPからGroongaを利用する-PHPバインディング

Yujiro3
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away