xref: /PHP-8.1/ext/pdo/pdo_stmt.stub.php (revision 2378f357)
1<?php
2
3/** @generate-class-entries */
4
5/** @not-serializable */
6class PDOStatement implements IteratorAggregate
7{
8    public string $queryString;
9
10    /** @tentative-return-type */
11    public function bindColumn(string|int $column, mixed &$var, int $type = PDO::PARAM_STR, int $maxLength = 0, mixed $driverOptions = null): bool {}
12
13    /** @tentative-return-type */
14    public function bindParam(string|int $param, mixed &$var, int $type = PDO::PARAM_STR, int $maxLength = 0, mixed $driverOptions = null): bool {}
15
16    /** @tentative-return-type */
17    public function bindValue(string|int $param, mixed $value, int $type = PDO::PARAM_STR): bool {}
18
19    /** @tentative-return-type */
20    public function closeCursor(): bool {}
21
22    /** @tentative-return-type */
23    public function columnCount(): int {}
24
25    /** @tentative-return-type */
26    public function debugDumpParams(): ?bool {}
27
28    /** @tentative-return-type */
29    public function errorCode(): ?string {}
30
31    /** @tentative-return-type */
32    public function errorInfo(): array {}
33
34    /** @tentative-return-type */
35    public function execute(?array $params = null): bool {}
36
37    /** @tentative-return-type */
38    public function fetch(int $mode = PDO::FETCH_DEFAULT, int $cursorOrientation = PDO::FETCH_ORI_NEXT, int $cursorOffset = 0): mixed {}
39
40    /** @tentative-return-type */
41    public function fetchAll(int $mode = PDO::FETCH_DEFAULT, mixed ...$args): array {}
42
43    /** @tentative-return-type */
44    public function fetchColumn(int $column = 0): mixed {}
45
46    /** @tentative-return-type */
47    public function fetchObject(?string $class = "stdClass", array $constructorArgs = []): object|false {}
48
49    /** @tentative-return-type */
50    public function getAttribute(int $name): mixed {}
51
52    /** @tentative-return-type */
53    public function getColumnMeta(int $column): array|false {}
54
55    /** @tentative-return-type */
56    public function nextRowset(): bool {}
57
58    /** @tentative-return-type */
59    public function rowCount(): int {}
60
61    /** @tentative-return-type */
62    public function setAttribute(int $attribute, mixed $value): bool {}
63
64    /** @return bool */
65    public function setFetchMode(int $mode, mixed ...$args) {} // TODO make return type void
66
67    public function getIterator(): Iterator {}
68}
69
70/** @not-serializable */
71final class PDORow
72{
73    public string $queryString;
74}
75