sesam_fetch_result
sesam_fetch_result
(только PHP 3 CVS)
sesam_fetch_result - возвращает все части результата запроса.
Описание
mixed sesam_fetch_result (string result_id [, int max_rows])
Возвращает смешанный массив с вхождениями результата запроса, по выбору ограниченный максимумом рядов в параметре max_rows. Обратите внимание, что индексы рядов и столбцов имеют базу 0.
Таблица 1. Смешанный результирующий набор, возвращаемый функцией sesam_fetch_result()
элемент массива | содержимое |
---|---|
int $arr["count"] | количество столбцов в результирующем наборе (или нуль, если это был "immediate" запрос) |
int $arr["rows"] | количество столбцов в результирующем наборе (от нуля до max_rows) |
bool $arr["truncated"] | TRUE, если количество рядов было не менее max_rows, иначе FALSE. Обратите внимание, что даже если этот элемент TRUE, следующий вызов sesam_fetch_result() может вернуть ноль рядов, поскольку больше нет результирующих вхождений. |
mixed $arr[col][row] | результирующие данные для всех полей row(row) и column(col), (где integer индекс row находится между 0 и $arr["rows"]-1, а col - между 0 и $arr["count"]-1). Поля могут быть пустыми, поэтому вы обязаны проверять существование поля с помощью РНР-функции isset(). Тип возвращаемых полей зависит от соответствующего SQL-типа, объявленного для данного столбца (см. в разделе SESAM. Обзор. о применяемых конвертациях). SESAM "multiple fields" являются "inlined" и рассматриваются как последовательность столбцов. |
Заметьте, что количество памяти, используемой большим запросом, может быть гигантским. Используйте параметр max_rows для ограничения максимального количества возвращаемых рядов, если только вы не уверены, что ваш результат не будет использовать всю доступную память.
См. также sesam_fetch_row() и sesam_field_array() о проверке на наличие "multiple fields". См. в описании функции sesam_query() полный пример использования sesam_fetch_result().