PDOStatement :: pobrania
Podręcznik PHP PDO referencyjny
PDOStatement :: sprowadzić - skupienie się na wynikach uzyskanych z następnego rzędu (PHP 5> = 5.1.0, PECL pdo> = 0.1.0)
wyjaśnienie
gramatyka
mixed PDOStatement::fetch ([ int $fetch_style [, int $cursor_orientation = PDO::FETCH_ORI_NEXT [, int $cursor_offset = 0 ]]] )
Z obiektu PDOStatement powiązanego zestawu wyników dostaje następny wiersz. Parametr fetch_style POD określa jak zwracane są wiersze.
parametry
fetch_style
Jak kontrolować linia jest zwrócony do wywołującego. Ta wartość musi być PDO :: FETCH_ * stałe w serii, wartość domyślna dla PDO :: ATTR_DEFAULT_FETCH_MODE (domyślnie PDO :: FETCH_BOTH).
PDO :: FETCH_ASSOC: Zwraca tablicę indeksowane nazwy kolumn z tabeli wynikowej
PDO :: FETCH_BOTH (domyślnie): Zwraca tablicę wyników indeksu określone nazwy kolumn poczynając od 0 do liczby kolumn
PDO :: FETCH_BOUND: zwraca
TRUE
, zmienne PHP i przypisanie wartości do kolumn w zestawie wyników metody PDOStatement :: bindColumn () wiążące.PDO :: FETCH_CLASS: prośba zwrócić nową instancję klasy odwzorowaniem nazw kolumn w zestawie wyników do nazwy klasy odpowiedniej nieruchomości. Jeśli
fetch_style
zawiera PDO :: FETCH_CLASSTYPE (na przykład: PDO :: FETCH_CLASS | PDO :: FETCH_CLASSTYPE ), nazwa klasy jest określana przez wartość w pierwszej kolumniePDO :: FETCH_INTO: Aktualizacja istniejącej instancji żądania klasy mapowane do kolumn w tabeli wynikowej klasy o nazwie mienia
PDO :: FETCH_LAZY: w połączeniu z PDO :: FETCH_BOTH i PDO :: FETCH_OBJ, do tworzenia nazwę zmiennej obiekt używany do dostępu
PDO :: FETCH_NUM: powrót do liczby zero-indeksowane kolumny tabeli wynikowej tablicy
PDO :: FETCH_OBJ: Zwraca nazwę właściwości odpowiadającej wynikowej nazwy kolumn anonimowych przedmiotów
cursor_orientation
Dla obiektu PDOStatement reprezentującego przewijalną kursor, ta wartość określa, który wiersz jest zwracana do rozmówcy. Ta wartość musi być PDO :: FETCH_ORI_ * stałe w serii, domyślnie jest PDO :: FETCH_ORI_NEXT. Aby uzyskać obiekt PDOStatement użyciu przewijanie kursorów należy użyć, gdy PDO :: prepare () oświadczenia obróbki wstępnej SQL ustaw PDO :: ATTR_CURSOR atrybutu PDO :: CURSOR_SCROLL.
offset
Dla parametru cursor_orientation jest ustawiony na PDO :: PDOStatement obiekt reprezentujący przewijane kursory FETCH_ORI_ABS, wartość ta określa zestaw wyników chcesz uzyskać bezwzględnej linii numer linii.
Dla parametru cursor_orientation jest ustawiony na PDO :: FETCH_ORI_REL obiekt PDOStatement reprezentujący przewijalną kursor, ta wartość określa PDOStatement połączenia :: fetch () przed pozycji kursora w odniesieniu do linii, którą chcemy uzyskać
Wartość zwracana
W czasach, kiedy funkcja ta wartość (metoda) zależy od wybranego typu ekstrakcji. We wszystkich przypadkach, niewydolność zwraca FAŁSZ.
Przykłady
Uzyskaj rzędzie z różnych metod ekstrakcji
<?php $sth = $dbh->prepare("SELECT name, colour FROM fruit"); $sth->execute(); /* 运用 PDOStatement::fetch 风格 */ print("PDO::FETCH_ASSOC: "); print("Return next row as an array indexed by column name\n"); $result = $sth->fetch(PDO::FETCH_ASSOC); print_r($result); print("\n"); print("PDO::FETCH_BOTH: "); print("Return next row as an array indexed by both column name and number\n"); $result = $sth->fetch(PDO::FETCH_BOTH); print_r($result); print("\n"); print("PDO::FETCH_LAZY: "); print("Return next row as an anonymous object with column names as properties\n"); $result = $sth->fetch(PDO::FETCH_LAZY); print_r($result); print("\n"); print("PDO::FETCH_OBJ: "); print("Return next row as an anonymous object with column names as properties\n"); $result = $sth->fetch(PDO::FETCH_OBJ); print $result->NAME; print("\n"); ?>
Powyższe przykłady wyświetli:
PDO::FETCH_ASSOC: Return next row as an array indexed by column name Array ( [NAME] => apple [COLOUR] => red ) PDO::FETCH_BOTH: Return next row as an array indexed by both column name and number Array ( [NAME] => banana [0] => banana [COLOUR] => yellow [1] => yellow ) PDO::FETCH_LAZY: Return next row as an anonymous object with column names as properties PDORow Object ( [NAME] => orange [COLOUR] => orange ) PDO::FETCH_OBJ: Return next row as an anonymous object with column names as properties kiwi
Użyj przewijalną kursor pobrać wiersze
<?php function readDataForwards($dbh) { $sql = 'SELECT hand, won, bet FROM mynumbers ORDER BY BET'; try { $stmt = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL)); $stmt->execute(); while ($row = $stmt->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_NEXT)) { $data = $row[0] . "\t" . $row[1] . "\t" . $row[2] . "\n"; print $data; } $stmt = null; } catch (PDOException $e) { print $e->getMessage(); } } function readDataBackwards($dbh) { $sql = 'SELECT hand, won, bet FROM mynumbers ORDER BY bet'; try { $stmt = $dbh->prepare($sql, array(PDO::ATTR_CURSOR => PDO::CURSOR_SCROLL)); $stmt->execute(); $row = $stmt->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_LAST); do { $data = $row[0] . "\t" . $row[1] . "\t" . $row[2] . "\n"; print $data; } while ($row = $stmt->fetch(PDO::FETCH_NUM, PDO::FETCH_ORI_PRIOR)); $stmt = null; } catch (PDOException $e) { print $e->getMessage(); } } print "Reading forwards:\n"; readDataForwards($conn); print "Reading backwards:\n"; readDataBackwards($conn); ?>
Powyższe przykłady wyświetli:
Reading forwards: 21 10 5 16 0 5 19 20 10 Reading backwards: 19 20 10 16 0 5 21 10 5