Spec-Zone .ru
спецификации, руководства, описания, API

22.9.3.11. mysqli_result class (mysqli_result)

Copyright 1997-2012 PHP Documentation Group.

Представляет набор результатов, полученный из запроса против базы данных.

Журнал изменений

Таблица 22.55. Журнал изменений

Версия Описание
5.4.0 Iterator поддержка была добавлена, как mysqli_result теперь реализацииTraversable.

 mysqli_result {
mysqli_result , TraversableProperties int mysqli_result->current_field ;
int mysqli_result->field_count ;
array mysqli_result->lengths ;
int mysqli_result->num_rows ;
Methods bool mysqli_result::data_seek(int offset);
mixed mysqli_result::fetch_all(int resulttype= =MYSQLI_NUM);
mixed mysqli_result::fetch_array(int resulttype= =MYSQLI_BOTH);
array mysqli_result::fetch_assoc();
object mysqli_result::fetch_field_direct(int fieldnr);
object mysqli_result::fetch_field();
array mysqli_result::fetch_fields();
object mysqli_result::fetch_object(string class_name,
array params);

mixed mysqli_result::fetch_row();
bool mysqli_result::field_seek(int fieldnr);
void mysqli_result::free();
}

22.9.3.11.1. mysqli_result::$current_field,mysqli_field_tell

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::$current_field

    mysqli_field_tell

    Получите текущее полевое смещение указателя результата

Описание

Объектно-ориентированный стиль

int mysqli_result->current_field ;

Процедурный стиль

int mysqli_field_tell(mysqli_result result);

Возвращает позицию полевого курсора, используемого для последнего mysqli_fetch_field вызвать. Это значение может использоваться в качестве параметра mysqli_field_seek.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Текущее смещение возвратов полевого курсора.

Примеры

Пример 22.182. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = $mysqli->query($query)) {    /* Get field information for all columns */    while ($finfo = $result->fetch_field()) {        /* get fieldpointer offset */        $currentfield = $result->current_field;        printf("Column %d:\n", $currentfield);        printf("Name:     %s\n", $finfo->name);        printf("Table:    %s\n", $finfo->table);        printf("max. Len: %d\n", $finfo->max_length);        printf("Flags:    %d\n", $finfo->flags);        printf("Type:     %d\n\n", $finfo->type);    }    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.183. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = mysqli_query($link, $query)) {    /* Get field information for all fields */    while ($finfo = mysqli_fetch_field($result)) {        /* get fieldpointer offset */        $currentfield = mysqli_field_tell($result);        printf("Column %d:\n", $currentfield);        printf("Name:     %s\n", $finfo->name);        printf("Table:    %s\n", $finfo->table);        printf("max. Len: %d\n", $finfo->max_length);        printf("Flags:    %d\n", $finfo->flags);        printf("Type:     %d\n\n", $finfo->type);    }    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Column 1:Name:     NameTable:    Countrymax. Len: 11Flags:    1Type:     254Column 2:Name:     SurfaceAreaTable:    Countrymax. Len: 10Flags:    32769Type:     4

См. Также

mysqli_fetch_field
mysqli_field_seek

22.9.3.11.2. mysqli_result::data_seek,mysqli_data_seek

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::data_seek

    mysqli_data_seek

    Корректирует указатель результата на произвольную строку в результате

Описание

Объектно-ориентированный стиль

bool mysqli_result::data_seek(int offset);

Процедурный стиль

bool mysqli_data_seek(mysqli_result result,
int offset);

mysqli_data_seek функция ищет на произвольный указатель результата, определенный offset в наборе результатов.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

offset

Поле смещается. Должен быть между нулем и общим количеством строк минус один (0..mysqli_num_rows - 1).

Возвращаемые значения

Возвраты TRUE на успехе или FALSE при отказе.

Примечания

Отметить

Эта функция может только использоваться с буферизованными результатами, достигнутыми от использования mysqli_store_result или mysqli_query функции.

Примеры

Пример 22.184. Объектно-ориентированный стиль

<?php/* Open a connection */$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER BY Name";if ($result = $mysqli->query( $query)) {    /* seek to row no. 400 */    $result->data_seek(399);    /* fetch row */    $row = $result->fetch_row();    printf ("City: %s  Countrycode: %s\n", $row[0], $row[1]);    /* free result set*/    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.185. Процедурный стиль

<?php/* Open a connection */$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (!$link) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER BY Name";if ($result = mysqli_query($link, $query)) {    /* seek to row no. 400 */    mysqli_data_seek($result, 399);    /* fetch row */    $row = mysqli_fetch_row($result);    printf ("City: %s  Countrycode: %s\n", $row[0], $row[1]);    /* free result set*/    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

City: Benin City  Countrycode: NGA

См. Также

mysqli_store_result
mysqli_fetch_row
mysqli_fetch_array
mysqli_fetch_assoc
mysqli_fetch_object
mysqli_query
mysqli_num_rows

22.9.3.11.3. mysqli_result::fetch_all,mysqli_fetch_all

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_all

    mysqli_fetch_all

    Выборки все строки результата как ассоциативный массив, числовой массив, или оба

Описание

Объектно-ориентированный стиль

mixed mysqli_result::fetch_all(int resulttype= =MYSQLI_NUM);

Процедурный стиль

mixed mysqli_fetch_all(mysqli_result result,
int resulttype= =MYSQLI_NUM);

mysqli_fetch_all выборки все строки результата и возвраты набор результатов как ассоциативный массив, числовой массив, или оба.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

resulttype

Этот дополнительный параметр является постоянным указанием, какой массив должен быть произведен из текущих данных строки. Возможные значения для этого параметра являются константами MYSQLI_ASSOC , MYSQLI_NUM , или MYSQLI_BOTH .

Возвращаемые значения

Возвращает массив ассоциативных или числовых массивов, содержащих строки результата.

MySQL Native Driver Only

Доступный только с mysqlnd.

Как mysqli_fetch_all возвраты все строки как массив в единственном шаге, это может использовать больше памяти чем некоторые подобные функции такой как mysqli_fetch_array, который только возвращает одну строку за один раз из набора результатов. Далее, если Вы должны выполнить итерации по набору результатов, Вы будете нуждаться в конструкции цикличного выполнения, которая будет далее воздействовать на производительность. По этим причинам mysqli_fetch_all должен только использоваться в тех ситуациях, куда выбранный набор результатов будет отправлен другому уровню для того, чтобы обработать.

См. Также

mysqli_fetch_array
mysqli_query

22.9.3.11.4. mysqli_result::fetch_array,mysqli_fetch_array

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_array

    mysqli_fetch_array

    Выберите строку результата как ассоциативное, числовой массив, или обоих

Описание

Объектно-ориентированный стиль

mixed mysqli_result::fetch_array(int resulttype= =MYSQLI_BOTH);

Процедурный стиль

mixed mysqli_fetch_array(mysqli_result result,
int resulttype= =MYSQLI_BOTH);

Возвращает массив, который соответствует выбранной строке или NULL если нет больше строк для набора результатов, представленного result параметр.

mysqli_fetch_array расширенная версия mysqli_fetch_row функция. В дополнение к тому, чтобы хранить данные в числовых индексах массива результата, mysqli_fetch_array функция может также хранить данные в ассоциативных индексах, используя имена полей набора результатов как ключи.

Отметить

Имена полей, возвращенные этим functionare чувствительный к регистру.

Отметить

Эта функция устанавливает поля NULL tothe PHP NULL значение.

Если у двух или больше столбцов результата будут те же самые имена полей, то последний столбец будет иметь приоритет и перезаписывать более ранние данные. Чтобы получить доступ к многократным столбцам с тем же самым именем, в цифровой форме индексированная версия строки должна использоваться.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

resulttype

Этот дополнительный параметр является постоянным указанием, какой массив должен быть произведен из текущих данных строки. Возможные значения для этого параметра являются константами MYSQLI_ASSOC , MYSQLI_NUM , или MYSQLI_BOTH .

При использовании MYSQLI_ASSOC постоянный эта функция будет вести себя тождественно к mysqli_fetch_assoc, в то время как MYSQLI_NUM будет вести себя тождественно к mysqli_fetch_row функция. Заключительная опция MYSQLI_BOTH создаст единственный массив с атрибутами обоих.

Возвращаемые значения

Возвращает массив строк, который соответствует выбранной строке или NULL если нет больше строк в наборе результатов.

Примеры

Пример 22.186. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";$result = $mysqli->query($query);/* numeric array */$row = $result->fetch_array(MYSQLI_NUM);printf ("%s (%s)\n", $row[0], $row[1]);/* associative array */$row = $result->fetch_array(MYSQLI_ASSOC);printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);/* associative and numeric array */$row = $result->fetch_array(MYSQLI_BOTH);printf ("%s (%s)\n", $row[0], $row["CountryCode"]);/* free result set */$result->free();/* close connection */$mysqli->close();?>

Пример 22.187. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER by ID LIMIT 3";$result = mysqli_query($link, $query);/* numeric array */$row = mysqli_fetch_array($result, MYSQLI_NUM);printf ("%s (%s)\n", $row[0], $row[1]);/* associative array */$row = mysqli_fetch_array($result, MYSQLI_ASSOC);printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);/* associative and numeric array */$row = mysqli_fetch_array($result, MYSQLI_BOTH);printf ("%s (%s)\n", $row[0], $row["CountryCode"]);/* free result set */mysqli_free_result($result);/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Kabul (AFG)Qandahar (AFG)Herat (AFG)

См. Также

mysqli_fetch_assoc
mysqli_fetch_row
mysqli_fetch_object
mysqli_query
mysqli_data_seek

22.9.3.11.5. mysqli_result::fetch_assoc,mysqli_fetch_assoc

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_assoc

    mysqli_fetch_assoc

    Выберите строку результата как ассоциативный массив

Описание

Объектно-ориентированный стиль

array mysqli_result::fetch_assoc();

Процедурный стиль

array mysqli_fetch_assoc(mysqli_result result);

Возвращает ассоциативный массив, который соответствует выбранной строке или NULL если нет больше строк.

Отметить

Имена полей, возвращенные этим functionare чувствительный к регистру.

Отметить

Эта функция устанавливает поля NULL tothe PHP NULL значение.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Возвращает ассоциативный массив строк, представляющих выбранную строку в наборе результатов, где каждый ключ в массиве представляет имя одного из столбцов набора результатов или NULL если нет больше строк в наборе результатов.

Если у двух или больше столбцов результата будут те же самые имена полей, то последний столбец будет иметь приоритет. Чтобы получить доступ к другому столбцу (цам) того же самого имени, Вы любой должны получить доступ к результату с числовыми индексами при использовании mysqli_fetch_row или добавьте имена псевдонима.

Примеры

Пример 22.188. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";if ($result = $mysqli->query($query)) {    /* fetch associative array */    while ($row = $result->fetch_assoc()) {        printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);    }    /* free result set */    $result->free();}/* close connection */$mysqli->close();?>

Пример 22.189. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";if ($result = mysqli_query($link, $query)) {    /* fetch associative array */    while ($row = mysqli_fetch_assoc($result)) {        printf ("%s (%s)\n", $row["Name"], $row["CountryCode"]);    }    /* free result set */    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Pueblo (USA)Arvada (USA)Cape Coral (USA)Green Bay (USA)Santa Clara (USA)

Пример 22.190. A mysqli_result сравнение в качестве примераiterator использование

<?php$c = mysqli_connect('127.0.0.1','user', 'pass');// Using iterators (support was added with PHP 5.4)foreach ( $c->query('SELECT user,host FROM mysql.user') as $row ) {    printf("'%s'@'%s'\n", $row['user'], $row['host']);}echo "\n==================\n";// Not using iterators$result = $c->query('SELECT user,host FROM mysql.user');while ($row = $result->fetch_assoc()) {    printf("'%s'@'%s'\n", $row['user'], $row['host']);}?>   

Вышеупомянутый пример выведет что-то подобное:

'root'@'192.168.1.1''root'@'127.0.0.1''dude'@'localhost''lebowski'@'localhost'=================='root'@'192.168.1.1''root'@'127.0.0.1''dude'@'localhost''lebowski'@'localhost'

См. Также

mysqli_fetch_array
mysqli_fetch_row
mysqli_fetch_object
mysqli_query
mysqli_data_seek

22.9.3.11.6. mysqli_result::fetch_field_direct,mysqli_fetch_field_direct

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_field_direct

    mysqli_fetch_field_direct

    Метаданные выборки для единственного поля

Описание

Объектно-ориентированный стиль

object mysqli_result::fetch_field_direct(int fieldnr);

Процедурный стиль

object mysqli_fetch_field_direct(mysqli_result result,
int fieldnr);

Возвращает объект, который содержит информацию об определении поля от указанного набора результатов.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

fieldnr

Полевое число. Это значение должно быть в диапазоне от 0 к number of fields - 1.

Возвращаемые значения

Возвращает объект, который содержит информацию об определении поля или FALSE если никакая информация о поле для указанного fieldnr доступно.

Таблица 22.56. Атрибуты объектов

Атрибут Описание
имя Имя столбца
orgname Исходное имя столбца, если псевдоним был определен
таблица Имя таблицы это поле принадлежит (если не вычисленный)
orgtable Исходное имя таблицы, если псевдоним был определен
определение Значение по умолчанию для этого поля, представленного как строка
max_length Максимальный width поля для набора результатов.
длина width поля, как определено в табличном определении.
charsetnr Число набора символов для поля.
флаги Целое число, представляющее битовые флаги для поля.
ввести Тип данных используется для этого поля
десятичные числа Число используемых десятичных чисел (для целочисленных полей)

Примеры

Пример 22.191. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";if ($result = $mysqli->query($query)) {    /* Get field information for column 'SurfaceArea' */    $finfo = $result->fetch_field_direct(1);    printf("Name:     %s\n", $finfo->name);    printf("Table:    %s\n", $finfo->table);    printf("max. Len: %d\n", $finfo->max_length);    printf("Flags:    %d\n", $finfo->flags);    printf("Type:     %d\n", $finfo->type);    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.192. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";if ($result = mysqli_query($link, $query)) {    /* Get field information for column 'SurfaceArea' */    $finfo = mysqli_fetch_field_direct($result, 1);    printf("Name:     %s\n", $finfo->name);    printf("Table:    %s\n", $finfo->table);    printf("max. Len: %d\n", $finfo->max_length);    printf("Flags:    %d\n", $finfo->flags);    printf("Type:     %d\n", $finfo->type);    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Name:     SurfaceAreaTable:    Countrymax. Len: 10Flags:    32769Type:     4

См. Также

mysqli_num_fields
mysqli_fetch_field
mysqli_fetch_fields

22.9.3.11.7. mysqli_result::fetch_field,mysqli_fetch_field

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_field

    mysqli_fetch_field

    Возвращает следующее поле в наборе результатов

Описание

Объектно-ориентированный стиль

object mysqli_result::fetch_field();

Процедурный стиль

object mysqli_fetch_field(mysqli_result result);

Возвращает определение одного столбца набора результатов как объект. Вызовите эту функцию неоднократно, чтобы получить информацию обо всех столбцах в наборе результатов.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Возвращает объект, который содержит информацию об определении поля или FALSE если никакая информация о поле не доступна.

Таблица 22.57. Объектные свойства

Свойство Описание
имя Имя столбца
orgname Исходное имя столбца, если псевдоним был определен
таблица Имя таблицы это поле принадлежит (если не вычисленный)
orgtable Исходное имя таблицы, если псевдоним был определен
определение Зарезервированный для значения по умолчанию, в настоящий момент всегда""
дб База данных (начиная с PHP 5.3.6)
каталог Имя каталога, всегда "определение" (начиная с PHP 5.3.6)
max_length Максимальный width поля для набора результатов.
длина width поля, как определено в табличном определении.
charsetnr Число набора символов для поля.
флаги Целое число, представляющее битовые флаги для поля.
ввести Тип данных используется для этого поля
десятичные числа Число используемых десятичных чисел (для целочисленных полей)

Примеры

Пример 22.193. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = $mysqli->query($query)) {    /* Get field information for all columns */    while ($finfo = $result->fetch_field()) {        printf("Name:     %s\n", $finfo->name);        printf("Table:    %s\n", $finfo->table);        printf("max. Len: %d\n", $finfo->max_length);        printf("Flags:    %d\n", $finfo->flags);        printf("Type:     %d\n\n", $finfo->type);    }    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.194. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = mysqli_query($link, $query)) {    /* Get field information for all fields */    while ($finfo = mysqli_fetch_field($result)) {        printf("Name:     %s\n", $finfo->name);        printf("Table:    %s\n", $finfo->table);        printf("max. Len: %d\n", $finfo->max_length);        printf("Flags:    %d\n", $finfo->flags);        printf("Type:     %d\n\n", $finfo->type);    }    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Name:     NameTable:    Countrymax. Len: 11Flags:    1Type:     254Name:     SurfaceAreaTable:    Countrymax. Len: 10Flags:    32769Type:     4

См. Также

mysqli_num_fields
mysqli_fetch_field_direct
mysqli_fetch_fields
mysqli_field_seek

22.9.3.11.8. mysqli_result::fetch_fields,mysqli_fetch_fields

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_fields

    mysqli_fetch_fields

    Возвращает массив объектов, представляющих поля в наборе результатов

Описание

Объектно-ориентированный стиль

array mysqli_result::fetch_fields();

Процедурный стиль

array mysqli_fetch_fields(mysqli_result result);

Эта функция служит идентичной цели к mysqli_fetch_field функция с единственным различием, что, вместо того, чтобы возвратить один объект за один раз для каждого поля, столбцы возвращаются как массив объектов.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Возвращает массив объектов, который содержит информацию об определении поля или FALSE если никакая информация о поле не доступна.

Таблица 22.58. Объектные свойства

Свойство Описание
имя Имя столбца
orgname Исходное имя столбца, если псевдоним был определен
таблица Имя таблицы это поле принадлежит (если не вычисленный)
orgtable Исходное имя таблицы, если псевдоним был определен
max_length Максимальный width поля для набора результатов.
длина width поля, как определено в табличном определении.
charsetnr Число набора символов для поля.
флаги Целое число, представляющее битовые флаги для поля.
ввести Тип данных используется для этого поля
десятичные числа Число используемых десятичных чисел (для целочисленных полей)

Примеры

Пример 22.195. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = $mysqli->query($query)) {    /* Get field information for all columns */    $finfo = $result->fetch_fields();    foreach ($finfo as $val) {        printf("Name:     %s\n", $val->name);        printf("Table:    %s\n", $val->table);        printf("max. Len: %d\n", $val->max_length);        printf("Flags:    %d\n", $val->flags);        printf("Type:     %d\n\n", $val->type);    }    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.196. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = mysqli_query($link, $query)) {    /* Get field information for all columns */    $finfo = mysqli_fetch_fields($result);    foreach ($finfo as $val) {        printf("Name:     %s\n", $val->name);        printf("Table:    %s\n", $val->table);        printf("max. Len: %d\n", $val->max_length);        printf("Flags:    %d\n", $val->flags);        printf("Type:     %d\n\n", $val->type);    }    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Name:     NameTable:    Countrymax. Len: 11Flags:    1Type:     254Name:     SurfaceAreaTable:    Countrymax. Len: 10Flags:    32769Type:     4

См. Также

mysqli_num_fields
mysqli_fetch_field_direct
mysqli_fetch_field

22.9.3.11.9. mysqli_result::fetch_object,mysqli_fetch_object

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_object

    mysqli_fetch_object

    Возвращает текущую строку набора результатов как объект

Описание

Объектно-ориентированный стиль

object mysqli_result::fetch_object(string class_name,
array params);

Процедурный стиль

object mysqli_fetch_object(mysqli_result result,
string class_name,
array params);

mysqli_fetch_object возвратит текущий набор результатов строки как объект, где атрибуты объекта представляют имена полей, найденных в пределах набора результатов.

Отметьте это mysqli_fetch_object устанавливает свойства объекта прежде, чем вызвать объектного конструктора.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

class_name

Имя class, чтобы инстанцировать, установите свойства и возврат. Если не определенный, a stdClass объект возвращается.

params

Дополнительный массив параметров, чтобы передать конструктору для class_name объекты.

Возвращаемые значения

Возвращает объект со строковыми свойствами, который соответствует выбранной строке или NULL если нет больше строк в наборе результатов.

Отметить

Имена полей, возвращенные этим functionare чувствительный к регистру.

Отметить

Эта функция устанавливает поля NULL tothe PHP NULL значение.

Журнал изменений

Версия Описание
5.0.0 Добавленный возможность возвратиться как различный объект.

Примеры

Пример 22.197. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();} $query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";if ($result = $mysqli->query($query)) {    /* fetch object array */    while ($obj = $result->fetch_object()) {        printf ("%s (%s)\n", $obj->Name, $obj->CountryCode);    }    /* free result set */    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.198. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";if ($result = mysqli_query($link, $query)) {    /* fetch associative array */    while ($obj = mysqli_fetch_object($result)) {        printf ("%s (%s)\n", $obj->Name, $obj->CountryCode);    }    /* free result set */    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Pueblo (USA)Arvada (USA)Cape Coral (USA)Green Bay (USA)Santa Clara (USA)

См. Также

mysqli_fetch_array
mysqli_fetch_assoc
mysqli_fetch_row
mysqli_query
mysqli_data_seek

22.9.3.11.10. mysqli_result::fetch_row,mysqli_fetch_row

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::fetch_row

    mysqli_fetch_row

    Получите строку результата как перечислимый массив

Описание

Объектно-ориентированный стиль

mixed mysqli_result::fetch_row();

Процедурный стиль

mixed mysqli_fetch_row(mysqli_result result);

Выборки одна строка данных от набора результатов и возвратов это как перечислимый массив, где каждый столбец сохранен в смещении массива, запускающемся от 0 (нуль). Каждый последующий звонок в эту функцию возвратит следующую строку в пределах набора результатов, или NULL если нет больше строк.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

mysqli_fetch_row возвращает массив строк, который соответствует выбранной строке или NULL если нет больше строк в наборе результатов.

Отметить

Эта функция устанавливает поля NULL tothe PHP NULL значение.

Примеры

Пример 22.199. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";if ($result = $mysqli->query($query)) {    /* fetch object array */    while ($row = $result->fetch_row()) {        printf ("%s (%s)\n", $row[0], $row[1]);    }    /* free result set */    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.200. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, CountryCode FROM City ORDER by ID DESC LIMIT 50,5";if ($result = mysqli_query($link, $query)) {    /* fetch associative array */    while ($row = mysqli_fetch_row($result)) {        printf ("%s (%s)\n", $row[0], $row[1]);    }    /* free result set */    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Pueblo (USA)Arvada (USA)Cape Coral (USA)Green Bay (USA)Santa Clara (USA)

См. Также

mysqli_fetch_array
mysqli_fetch_assoc
mysqli_fetch_object
mysqli_query
mysqli_data_seek

22.9.3.11.11. mysqli_result::$field_count,mysqli_num_fields

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::$field_count

    mysqli_num_fields

    Получите число полей в результате

Описание

Объектно-ориентированный стиль

int mysqli_result->field_count ;

Процедурный стиль

int mysqli_num_fields(mysqli_result result);

Возвращает число полей от указанного набора результатов.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Число полей от набора результатов.

Примеры

Пример 22.201. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}if ($result = $mysqli->query("SELECT * FROM City ORDER BY ID LIMIT 1")) {    /* determine number of fields in result set */    $field_cnt = $result->field_count;    printf("Result set has %d fields.\n", $field_cnt);    /* close result set */    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.202. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}if ($result = mysqli_query($link, "SELECT * FROM City ORDER BY ID LIMIT 1")) {    /* determine number of fields in result set */    $field_cnt = mysqli_num_fields($result);    printf("Result set has %d fields.\n", $field_cnt);    /* close result set */    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Result set has 5 fields.

См. Также

mysqli_fetch_field

22.9.3.11.12. mysqli_result::field_seek,mysqli_field_seek

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::field_seek

    mysqli_field_seek

    Указатель результата набора на указанное поле смещается

Описание

Объектно-ориентированный стиль

bool mysqli_result::field_seek(int fieldnr);

Процедурный стиль

bool mysqli_field_seek(mysqli_result result,
int fieldnr);

Устанавливает полевой курсор в данное смещение. Следующий звонок mysqli_fetch_field получит определение поля столбца, связанного с тем смещением.

Отметить

Чтобы искать на начало строки, передайте значение смещения нуля.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

fieldnr

Полевое число. Это значение должно быть в диапазоне от 0 к number of fields - 1.

Возвращаемые значения

Возвраты TRUE на успехе или FALSE при отказе.

Примеры

Пример 22.203. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = $mysqli->query($query)) {    /* Get field information for 2nd column */    $result->field_seek(1);    $finfo = $result->fetch_field();    printf("Name:     %s\n", $finfo->name);    printf("Table:    %s\n", $finfo->table);    printf("max. Len: %d\n", $finfo->max_length);    printf("Flags:    %d\n", $finfo->flags);    printf("Type:     %d\n\n", $finfo->type);    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.204. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT Name, SurfaceArea from Country ORDER BY Code LIMIT 5";if ($result = mysqli_query($link, $query)) {    /* Get field information for 2nd column */    mysqli_field_seek($result, 1);    $finfo = mysqli_fetch_field($result);    printf("Name:     %s\n", $finfo->name);    printf("Table:    %s\n", $finfo->table);    printf("max. Len: %d\n", $finfo->max_length);    printf("Flags:    %d\n", $finfo->flags);    printf("Type:     %d\n\n", $finfo->type);    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Name:     SurfaceAreaTable:    Countrymax. Len: 10Flags:    32769Type:     4

См. Также

mysqli_fetch_field

22.9.3.11.13. mysqli_result::free,mysqli_free_result

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::free

    mysqli_free_result

    Освобождает память, связанную с результатом

Описание

Объектно-ориентированный стиль

void mysqli_result::free();
void mysqli_result::close();
void mysqli_result::free_result();

Процедурный стиль

void mysqli_free_result(mysqli_result result);

Освобождает память, связанную с результатом.

Отметить

Следует всегда освобождать свой результат с mysqli_free_result, когда Ваш объект результата не необходим больше.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Никакое значение не возвращается.

См. Также

mysqli_query
mysqli_stmt_store_result
mysqli_store_result
mysqli_use_result

22.9.3.11.14. mysqli_result::$lengths,mysqli_fetch_lengths

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::$lengths

    mysqli_fetch_lengths

    Возвращает длины столбцов текущей строки в наборе результатов

Описание

Объектно-ориентированный стиль

array mysqli_result->lengths ;

Процедурный стиль

array mysqli_fetch_lengths(mysqli_result result);

mysqli_fetch_lengths функционируйте возвращает массив, содержащий длины каждого столбца текущей строки в пределах набора результатов.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Массив целых чисел, представляющих размер каждого столбца (не включая любые нулевые символы завершения). FALSE если ошибка произошла.

mysqli_fetch_lengths допустимо только для текущей строки набора результатов. Это возвращается FALSE если Вы вызываете это прежде, чем вызвать mysqli_fetch_row/array/object или после получения всех строк в результате.

Примеры

Пример 22.205. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT * from Country ORDER BY Code LIMIT 1";if ($result = $mysqli->query($query)) {    $row = $result->fetch_row();    /* display column lengths */    foreach ($result->lengths as $i => $val) {        printf("Field %2d has Length %2d\n", $i+1, $val);    }    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.206. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}$query = "SELECT * from Country ORDER BY Code LIMIT 1";if ($result = mysqli_query($link, $query)) {    $row = mysqli_fetch_row($result);    /* display column lengths */    foreach (mysqli_fetch_lengths($result) as $i => $val) {        printf("Field %2d has Length %2d\n", $i+1, $val);    }    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Field  1 has Length  3Field  2 has Length  5Field  3 has Length 13Field  4 has Length  9Field  5 has Length  6Field  6 has Length  1Field  7 has Length  6Field  8 has Length  4Field  9 has Length  6Field 10 has Length  6Field 11 has Length  5Field 12 has Length 44Field 13 has Length  7Field 14 has Length  3Field 15 has Length  2

22.9.3.11.15. mysqli_result::$num_rows,mysqli_num_rows

Copyright 1997-2012 PHP Documentation Group.

  • mysqli_result::$num_rows

    mysqli_num_rows

    Получает число строк в результате

Описание

Объектно-ориентированный стиль

int mysqli_result->num_rows ;

Процедурный стиль

int mysqli_num_rows(mysqli_result result);

Возвращает число строк в наборе результатов.

Поведение mysqli_num_rows зависит от, или буферизованные или небуферизованные наборы результатов используются. Для небуферизованных наборов результатов, mysqli_num_rows не будет возвращать корректное число строк, пока все строки в результате не были получены.

Параметры

result

Процедурный стиль только: идентификатор набора результатов, возвращенный mysqli_query, mysqli_store_result или mysqli_use_result.

Возвращаемые значения

Число возвратов строк в наборе результатов.

Отметить

Если число строк больше чем MAXINT , число будет возвращено как строка.

Примеры

Пример 22.207. Объектно-ориентированный стиль

<?php$mysqli = new mysqli("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}if ($result = $mysqli->query("SELECT Code, Name FROM Country ORDER BY Name")) {    /* determine number of rows result set */    $row_cnt = $result->num_rows;    printf("Result set has %d rows.\n", $row_cnt);    /* close result set */    $result->close();}/* close connection */$mysqli->close();?>

Пример 22.208. Процедурный стиль

<?php$link = mysqli_connect("localhost", "my_user", "my_password", "world");/* check connection */if (mysqli_connect_errno()) {    printf("Connect failed: %s\n", mysqli_connect_error());    exit();}if ($result = mysqli_query($link, "SELECT Code, Name FROM Country ORDER BY Name")) {    /* determine number of rows result set */    $row_cnt = mysqli_num_rows($result);    printf("Result set has %d rows.\n", $row_cnt);    /* close result set */    mysqli_free_result($result);}/* close connection */mysqli_close($link);?>   

Вышеупомянутые примеры выведут:

Result set has 239 rows.

См. Также

mysqli_affected_rows
mysqli_store_result
mysqli_use_result
mysqli_query