- Custom DataBase Tables
- CDBT Version 1.x
- メソッド・リファレンス
- get_table_schema
get_table_schema
get_table_schema( [string $table_name] )
テーブル構造(スキーマ情報)を取得します。
パラメータ
$table_name
文字列としてスキーマ情報を取得したいテーブル名 table_name を指定します。
table_name の指定がない場合は、CDBT管理コンソールで現在選択されているテーブルが指定されます。
table_name の指定がない場合は、CDBT管理コンソールで現在選択されているテーブルが指定されます。
返り値
array( bool, string[, array] )
スキーマ情報を含む配列を返します。第1要素に処理結果を示す Boolean 値が入ります。スキーマ情報が正常に取得された場合は TRUE が、対象テーブルが存在しなかった場合は FALSE が入ります。第2要素には、正常処理時にはテーブル名が返り、エラーの時は処理ステータスのメッセージ文字列が入ります。正常処理時のみ第3要素が返ります。第3要素はスキーマ情報の配列となります(下記参照)。スキーマ情報配列はテーブル内の各カラムの構成情報配列をネストしています。
[2] => array(
"<カラム名>" => array(
"logical_name" => string 論理名(カラムコメント),
"max_length" => int 最大文字数,
"octet_length" => int 最大バイト数,
"not_null" => boolean NULL不可の時 TRUE ,
"default" => string デフォルト値(ない場合は NULL ),
"type" => string カラムタイプ,
"type_format" => string カラムタイプ書式,
"primary_key" => boolean プライマリキーかどうか,
"column_key" => string カラムキー(ない場合は "" ),
"unsigned" => boolean UNSIGNED属性があるかどうか,
"extra" => string その他のオプション
),
...
)
変更履歴
| バージョン | 内容 |
|---|---|
| 1.0.0 | – |
使用例
<?php
global $cdbt;
$table_name = "prefix_tablename";
$result = $cdbt->get_table_schema($table_name);
if ($result[0]) {
printf("%s.tbl has %d columns.n", $result[1], count($result[2]));
foreach ($result[2] as $column_name => $column_schema) {
echo "$column_name : {$column_schema['type_format']}n";
}
}