MySQL テーブルのフィールドのリストを得る

# mysql_list_fields

(PHP 4, PHP 5)

mysql_list_fields — MySQL テーブルのフィールドのリストを得る

警告

この関数は PHP 5.4.0 で非推奨になり、PHP 7.0.0 で MySQL 拡張モジュール 全体とあわせて削除されました。 MySQLi あるいは PDO_MySQL を使うべきです。詳細な情報は MySQL: API の選択 を参照ください。 この関数の代替として、これらが使えます。

- SQL クエリー: `SHOW COLUMNS FROM sometable`

### 説明

function mysql_list_fields(string `$database_name`, string `$table_name`, resource `$link_identifier` = NULL): resource

指定された名前のテーブルについての情報を取得します。

この関数は非推奨です。かわりに mysql_query() を利用して `SHOW COLUMNS FROM table [LIKE 'name']` 文を発行することを推奨します。

### パラメータ

`database_name`
  クエリの対象となるデータベース名。
`table_name`
  クエリの対象となるテーブル名。
`link_identifier`
  MySQL 接続。指定されない場合、mysql_connect() により直近にオープンされたリンクが指定されたと仮定されます。そのようなリンクがない場合、引数を指定せずに mysql_connect() がコールした時と同様にリンクを確立します。リンクが見付からない、または、確立できない場合、`E_WARNING` レベルのエラーが生成されます。

### 戻り値

成功した場合に結果ポインタ resource 、失敗した場合に `false` を返します。

返された結果は mysql_field_flags(), mysql_field_len(), mysql_field_name() そして mysql_field_type() で利用可能です。

### 例

例1 非推奨である mysql_list_fields() の代替例

    <?php
    $result = mysql_query("SHOW COLUMNS FROM sometable");
    if (!$result) {
        echo 'Could not run query: ' . mysql_error();
        exit;
    }
    if (mysql_num_rows($result) > 0) {
        while ($row = mysql_fetch_assoc($result)) {
            print_r($row);
        }
    }
    ?>

上の例の出力は、 たとえば以下のようになります。

    Array
    (
        [Field] => id
        [Type] => int(7)
        [Null] =>
        [Key] => PRI
        [Default] =>
        [Extra] => auto_increment
    )
    Array
    (
        [Field] => email
        [Type] => varchar(100)
        [Null] =>
        [Key] =>
        [Default] =>
        [Extra] =>
    )

### 注意

> 注意: 下位互換のために、次の非推奨別名を使用してもいいでしょう。 mysql_listfields()

### 参考

- mysql_field_flags() - 結果において指定したフィールドのフラグを取得する
- mysql_info() - 直近のクエリについての情報を得る

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open