mysqli::$info

mysqli_info

直近に実行されたクエリの情報を取得する

説明

オブジェクト指向型

stringnull$mysqli->info;

手続き型

stringnull mysqli_info(mysqli $mysql)

mysqli_info 関数は、直近に実行されたクエリに ついての情報を文字列で返します。文字列の詳細は以下のとおりです。

mysqli_info のとりうる戻り値
クエリの型 結果文字列の例
INSERT INTO...SELECT... Records: 100 Duplicates: 0 Warnings: 0
INSERT INTO...VALUES (...),(...),(...) Records: 3 Duplicates: 0 Warnings: 0
LOAD DATA INFILE ... Records: 1 Deleted: 0 Skipped: 0 Warnings: 0
ALTER TABLE ... Records: 3 Duplicates: 0 Warnings: 0
UPDATE ... Rows matched: 40 Changed: 40 Warnings: 0

注意:

これらのどれにも当てはまらない形式のクエリはサポートされません。 そのような場合、mysqli_info は空文字列を返します。

パラメータ

link

手続き型のみ: mysqli_connect あるいは mysqli_init が返す mysqliオブジェクト。

戻り値

直近に実行されたクエリについての追加情報を文字列で返します。

例1 $mysqli->info の例

オブジェクト指向型

<?php

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

$mysqli->query("CREATE TEMPORARY TABLE t1 LIKE City");

/* INSERT INTO ... SELECT */
$mysqli->query("INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");
printf("%s\n", $mysqli->info);

手続き型

<?php

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

mysqli_query($link, "CREATE TEMPORARY TABLE t1 LIKE City");

/* INSERT INTO ... SELECT */
mysqli_query($link, "INSERT INTO t1 SELECT * FROM City ORDER BY ID LIMIT 150");
printf("%s\n", mysqli_info($link));

上の例の出力は以下となります。

Records: 150  Duplicates: 0  Warnings: 0

参考

  • mysqli_affected_rows
  • mysqli_warning_count
  • mysqli_num_rows