PHP.mk документација

mysqli_stmt::result_metadata

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

mysqli-stmt.result-metadata.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека mysqli-stmt.result-metadata.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
mysqli_stmt::result_metadata

Референца за `mysqli-stmt.result-metadata.php` со подобрена типографија и навигација.

mysqli-stmt.result-metadata.php

mysqli_stmt::result_metadata

mysqli_stmt_result_metadata

класата mysqli_driver

mysqli_stmt::result_metadata -- mysqli_stmt_result_metadataВраќа метаподатоци од сет на резултати од подготвена изјава

= NULL

Напиши целосна ознака на елемент

public mysqli_stmt::result_metadata(): mysqli_result|false

Процедурален стил

mysqli_stmt_result_metadata(mysqli_stmt $statement): mysqli_result|false

Ако исказот предаден на mysqli_prepare() е оној што произведува сет на резултати, mysqli_stmt_result_metadata() враќа објект со резултат што може да се користи за обработка на мета информации како што се вкупниот број на полиња и информации за поединечни полиња.

Оваа функција враќа празен mysqli_result објект кој може да се користи за пристап до метаподатоци од подготвениот исказ без да се преземат вистинските редови податоци. Нема потреба да се користи оваа функција кога се користи mysqli_stmt_get_result() за преземање на целиот сет на резултати од подготвен исказ како објект со резултат.

Забелешка:

Овој објект со сет на резултати може да се предаде како аргумент само на функциите базирани на полиња што обработуваат метаподатоци од сет на резултати, како што се:

Забелешка: Сет на резултати вратен од mysqli_stmt_result_metadata() содржи само метаподатоци. Не содржи резултати од редови. Редовите се добиваат со повикување mysqli_stmt_get_result() на рачката на исказот или со mysqli_stmt_fetch().

Параметри

statement

објектот како свој прв аргумент. mysqli_stmt Само процедурален стил: А mysqli_stmt_init().

Вратени вредности

Враќа објект со резултат или false ако се појави грешка. Ако исказот не произведува сет на резултати, false се враќа исто така.

Errors/Exceptions

Ако е овозможено известување за грешки на mysqli (MYSQLI_REPORT_ERROR) и бараната операција не успее, се генерира предупредување. Ако, дополнително, режимот е поставен на MYSQLI_REPORT_STRICT, а mysqli_sql_exception наместо тоа се фрла.

Примери

Пример #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);
?>

Пример #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);
?>

Види Исто така

  • mysqli_prepare() - Подготвува SQL израз за извршување
  • mysqli_free_result() - Ослободува меморија поврзана со резултат
  • mysqli_stmt_get_result() - Поврзува променливи со подготвена изјава за складирање на резултати

Белешки од корисници 1 белешка

potherca at gmail dot com
пред 15 години
If result_metadata() returns false but error/errno/sqlstate tells you no error occurred, this means your query is one that does not produce a result set, i.e. an INSERT/UPDATE/DELETE query instead of a SELECT query.

This is stated in the documentation where it says "If a statement passed to mysqli_prepare() is one that produces a result set, mysqli_stmt_result_metadata() returns the result object", but it might not be clear to everyone what this entails exactly. 

Hope this helps.
На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.