指定したステートメントのカラム数を返す

# mysqli_stmt::$field_count

# mysqli_stmt_field_count

(PHP 5, PHP 7, PHP 8)

mysqli_stmt::$field_count -- mysqli_stmt_field_count — 指定したステートメントのカラム数を返す

### 説明

オブジェクト指向型

int $mysqli_stmt->field_count;

手続き型

function mysqli_stmt_field_count(mysqli_stmt `$statement`): int

プリペアドステートメントで指定されたカラムの数を返します。

### パラメータ

`stmt`
  手続き型のみ: mysqli_stmt_init() が返す mysqli_stmt オブジェクト。

### 戻り値

カラム数を示す整数値を返します。

### 例

例1 オブジェクト指向型

    <?php

    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    $mysqli = new mysqli("localhost", "my_user", "my_password", "world");

    $code = 'FR';

    $stmt = $mysqli->prepare("SELECT Name FROM Country WHERE Code=?");
    $stmt->bind_param('s', $code);
    $stmt->execute();
    $row = $stmt->get_result()->fetch_row();
    for ($i = 0; $i < $stmt->field_count; $i++) {
        printf("Value of column number %d is %s", $i, $row[$i]);
    }

例2 手続き型

    <?php

    mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT);
    $mysqli = mysqli_connect("localhost", "my_user", "my_password", "world");

    $code = 'FR';

    $stmt = mysqli_prepare($mysqli, "SELECT Name FROM Country WHERE Code=?");
    mysqli_stmt_bind_param($stmt, 's', $code);
    mysqli_stmt_execute($stmt);
    $result = mysqli_stmt_get_result($stmt);
    $row = mysqli_fetch_row($result);
    for ($i = 0; $i < mysqli_stmt_field_count($stmt); $i++) {
        printf("Value of column number %d is %s", $i, $row[$i]);
    }

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

    Value of column number 0 is France

### 参考

- mysqli_stmt_num_rows() - サーバーから取得した結果セットの行数を返す

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