1--TEST--
2mysqli_field_count()
3--SKIPIF--
4<?php
5require_once('skipif.inc');
6require_once('skipifemb.inc');
7require_once('skipifconnectfailure.inc');
8?>
9--FILE--
10<?php
11	require_once("connect.inc");
12
13	$tmp    = NULL;
14	$link   = NULL;
15
16	if (!is_null($tmp = @mysqli_field_count()))
17		printf("[001] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
18
19	if (!is_null($tmp = @mysqli_field_count($link)))
20		printf("[002] Expecting NULL, got %s/%s\n", gettype($tmp), $tmp);
21
22	require('table.inc');
23
24	var_dump(mysqli_field_count($link));
25
26	if (!$res = mysqli_query($link, "SELECT * FROM test ORDER BY id LIMIT 1")) {
27		printf("[004] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
28	}
29
30	var_dump(mysqli_field_count($link));
31
32	mysqli_free_result($res);
33
34	if (!mysqli_query($link, "INSERT INTO test(id, label) VALUES (100, 'x')"))
35		printf("[005] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
36	var_dump($link->field_count);
37	var_dump(mysqli_field_count($link));
38
39	if (!$res = mysqli_query($link, "SELECT NULL as _null, '' AS '', 'three' AS 'drei'"))
40		printf("[006] [%d] %s\n", mysqli_errno($link), mysqli_error($link));
41	var_dump(mysqli_field_count($link));
42	mysqli_free_result($res);
43
44	mysqli_close($link);
45
46	var_dump(mysqli_field_count($link));
47
48	print "done!";
49?>
50--CLEAN--
51<?php
52	require_once("clean_table.inc");
53?>
54--EXPECTF--
55int(0)
56int(2)
57int(0)
58int(0)
59int(3)
60
61Warning: mysqli_field_count(): Couldn't fetch mysqli in %s on line %d
62NULL
63done!