From b65a038553e113a93d2aa1bd21e0ab4bc3c50b9f Mon Sep 17 00:00:00 2001 From: Javier Spagnoletti Date: Mon, 20 Mar 2023 21:00:57 -0300 Subject: [PATCH] [mysql] Add stubs for `mysqli`, `mysqli_stmt` and `mysqli_result` classes --- stubs/extensions/mysqli.phpstub | 51 +++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) diff --git a/stubs/extensions/mysqli.phpstub b/stubs/extensions/mysqli.phpstub index a5ec2f5407d..1569a5248df 100644 --- a/stubs/extensions/mysqli.phpstub +++ b/stubs/extensions/mysqli.phpstub @@ -1,5 +1,13 @@ |numeric-string + */ + public int|string $affected_rows; +} + /** * @template TValue * @@ -7,6 +15,11 @@ */ class mysqli_result implements Traversable { + /** + * @var int<0, max>|numeric-string + */ + public int|string $num_rows; + /** * @psalm-taint-sink callable $class * @@ -18,6 +31,44 @@ class mysqli_result implements Traversable function fetch_object(string $class = stdClass::class, array $constructor_args = []): object|false|null {} } +class mysqli_stmt +{ + /** + * @var int<-1, max>|numeric-string + */ + public int|string $affected_rows; + + public int $errno; + + /** + * @var list + */ + public $error_list; + + public string $error; + + /** + * @var 0|positive-int + */ + public int $field_count; + + public int|string $insert_id; + + /** + * @var int<0,max>|numeric-string + */ + public int|string $num_rows; + + /** + * @var 0|positive-int + */ + public int $param_count; + + /** + * @var non-empty-string + */ + public string $sqlstate; +} /** * @psalm-taint-sink callable $class