mysqli_stmt::result_metadata

mysqli_stmt_result_metadata

(PHP 5, PHP 7)

mysqli_stmt::result_metadata -- mysqli_stmt_result_metadataReturns result set metadata from a prepared statement

说明

面向对象风格

mysqli_stmt::result_metadata ( void ) : mysqli_result

过程化风格

mysqli_stmt_result_metadata ( mysqli_stmt $stmt ) : mysqli_result

If a statement passed to mysqli_prepare() is one that produces a result set, mysqli_stmt_result_metadata() returns the result object that can be used to process the meta information such as total number of fields and individual field information.

Note:

This result set pointer can be passed as an argument to any of the field-based functions that process result set metadata, such as:

The result set structure should be freed when you are done with it, which you can do by passing it to mysqli_free_result()

Note:

The result set returned by mysqli_stmt_result_metadata() contains only metadata. It does not contain any row results. The rows are obtained by using the statement handle with mysqli_stmt_fetch().

参数

stmt

仅以过程化样式:由 mysqli_stmt_init() 返回的 statement 标识。

返回值

Returns a result object or FALSE if an error occurred.

范例

Example #1 面向对象风格

<?php
$mysqli 
= new mysqli("localhost""my_user""my_password""test");

$mysqli->query("DROP TABLE IF EXISTS friends");
$mysqli->query("CREATE TABLE friends (id int, name varchar(20))");

$mysqli->query("INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");

$stmt $mysqli->prepare("SELECT id, name FROM friends");
$stmt->execute();

/* get resultset for metadata */
$result $stmt->result_metadata();

/* retrieve field information from metadata result set */
$field $result->fetch_field();

printf("Fieldname: %s\n"$field->name);

/* close resultset */
$result->close();

/* close connection */
$mysqli->close();
?>

Example #2 过程化风格

<?php
$link 
mysqli_connect("localhost""my_user""my_password""test");

mysqli_query($link"DROP TABLE IF EXISTS friends");
mysqli_query($link"CREATE TABLE friends (id int, name varchar(20))");

mysqli_query($link"INSERT INTO friends VALUES (1,'Hartmut'), (2, 'Ulf')");

$stmt mysqli_prepare($link"SELECT id, name FROM friends");
mysqli_stmt_execute($stmt);

/* get resultset for metadata */
$result mysqli_stmt_result_metadata($stmt);

/* retrieve field information from metadata result set */
$field mysqli_fetch_field($result);

printf("Fieldname: %s\n"$field->name);

/* close resultset */
mysqli_free_result($result);

/* close connection */
mysqli_close($link);
?>

参见

相关文章
php ibm db2 函数 returns a result set listing the columns and associated metadata for a tablephp ibm db2 函数 returns a result set listing the tables and associated metadata in a databasephp maxdb 函数 returns result set metadata from a prepared statementphp maxdb 函数 transfers a result set from a prepared statementphp oci8 函数 returns the next child statement resource from a parent statement resource that has oracle database 12c implicit result setsphp mysqli stmt returns the total number of rows changed deleted or inserted by the last executed statementphp mysqli stmt used to modify the behavior of a prepared statementphp mysqli stmt binds variables to a prepared statement as parametersphp mysqli stmt binds variables to a prepared statement for result storagephp mysqli stmt seeks to an arbitrary row in statement result setphp mysqli stmt returns a list of errors from the last statement executedphp mysqli stmt fetch results from a prepared statement into the bound variablesphp mysqli stmt gets a result set from a prepared statementphp mysqli stmt reads the next result from a multiple queryphp mysqli stmt return the number of rows in statements result setphp mysqli stmt returns result set metadata from a prepared statementphp mysqli stmt returns sqlstate error from previous statement operationphp mysqli stmt transfers a result set from a prepared statementphp sqlite3stmt executes a prepared statement and returns a result set objectphp sqlite3stmt returns the number of parameters within the prepared statement
关注编程学问公众号