Annotation of embedaddon/php/ext/standard/tests/general_functions/is_null.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test is_null() function
3: --FILE--
4: <?php
5: /* Prototype: bool is_null ( mixed $var );
6: * Description: Finds whether the given variable is NULL
7: */
8:
9: echo "*** Testing is_null() with valid null values ***\n";
10: // different valid null vlaues
11: $unset_array = array();
12: $unset_int = 10;
13: $unset_float = 10.5;
14: $unset_bool = true;
15: $unset_object = new stdclass;
16: $unset_resource = fopen(__FILE__, "r");
17: // unset them to make it null.
18: unset ($unset_array, $unset_int, $unset_float, $unset_bool, $unset_object, $unset_resource);
19: $null_var1 = NULL;
20: $null_var2 = null;
21:
22: $valid_nulls = array(
23: NULL,
24: null,
25: @$null_var1,
26: @$null_var2,
27: @$unset_array,
28: @$unset_int,
29: @$unset_float,
30: @$unset_bool,
31: @$unset_object,
32: @$unset_resource,
33: @$undefined_var,
34: );
35: /* loop to check that is_null() recognizes different
36: null values, expected output: bool(true) */
37: $loop_counter = 1;
38: foreach ($valid_nulls as $null_val ) {
39: echo "-- Iteration $loop_counter --\n"; $loop_counter++;
40: var_dump( is_null($null_val) );
41: }
42:
43: echo "\n*** Testing is_bool() on non null values ***\n";
44:
45: // get a resource type variable
46: $fp = fopen (__FILE__, "r");
47: $dfp = opendir ( dirname(__FILE__) );
48:
49: // other types in a array
50: $not_null_types = array (
51: /* integers */
52: 0,
53: 1,
54: -1,
55: -0,
56: 543915,
57: -5322,
58: 0x0,
59: 0x1,
60: 0x55F,
61: -0xCCF,
62: 0123,
63: -0654,
64: 00,
65: 01,
66:
67: /* strings */
68: "",
69: '',
70: "0",
71: '0',
72: "1",
73: '1',
74: 'string',
75: "string",
76: "true",
77: "false",
78: "FALSE",
79: "TRUE",
80: 'true',
81: 'false',
82: 'FALSE',
83: 'TRUE',
84: "NULL",
85: "null",
86:
87: /* floats */
88: 0.0,
89: 1.0,
90: -1.0,
91: 10.0000000000000000005,
92: .5e6,
93: -.5E7,
94: .5E+8,
95: -.5e+90,
96: 1e5,
97: -1e5,
98: 1E5,
99: -1E7,
100:
101: /* objects */
102: new stdclass,
103:
104: /* resources */
105: $fp,
106: $dfp,
107:
108: /* arrays */
109: array(),
110: array(0),
111: array(1),
112: array(NULL),
113: array(null),
114: array("string"),
115: array(true),
116: array(TRUE),
117: array(false),
118: array(FALSE),
119: array(1,2,3,4),
120: array(1 => "One", "two" => 2),
121: );
122: /* loop through the $not_null_types to see working of
123: is_null() on non null types, expected output: bool(false) */
124: $loop_counter = 1;
125: foreach ($not_null_types as $type ) {
126: echo "-- Iteration $loop_counter --\n"; $loop_counter++;
127: var_dump( is_null($type) );
128: }
129:
130: echo "\n*** Testing error conditions ***\n";
131: //Zero argument
132: var_dump( is_null() );
133:
134: //arguments more than expected
135: var_dump( is_null(NULL, null) );
136:
137: echo "Done\n";
138:
139: // close the resources used
140: fclose($fp);
141: closedir($dfp);
142:
143: ?>
144: --EXPECTF--
145: *** Testing is_null() with valid null values ***
146: -- Iteration 1 --
147: bool(true)
148: -- Iteration 2 --
149: bool(true)
150: -- Iteration 3 --
151: bool(true)
152: -- Iteration 4 --
153: bool(true)
154: -- Iteration 5 --
155: bool(true)
156: -- Iteration 6 --
157: bool(true)
158: -- Iteration 7 --
159: bool(true)
160: -- Iteration 8 --
161: bool(true)
162: -- Iteration 9 --
163: bool(true)
164: -- Iteration 10 --
165: bool(true)
166: -- Iteration 11 --
167: bool(true)
168:
169: *** Testing is_bool() on non null values ***
170: -- Iteration 1 --
171: bool(false)
172: -- Iteration 2 --
173: bool(false)
174: -- Iteration 3 --
175: bool(false)
176: -- Iteration 4 --
177: bool(false)
178: -- Iteration 5 --
179: bool(false)
180: -- Iteration 6 --
181: bool(false)
182: -- Iteration 7 --
183: bool(false)
184: -- Iteration 8 --
185: bool(false)
186: -- Iteration 9 --
187: bool(false)
188: -- Iteration 10 --
189: bool(false)
190: -- Iteration 11 --
191: bool(false)
192: -- Iteration 12 --
193: bool(false)
194: -- Iteration 13 --
195: bool(false)
196: -- Iteration 14 --
197: bool(false)
198: -- Iteration 15 --
199: bool(false)
200: -- Iteration 16 --
201: bool(false)
202: -- Iteration 17 --
203: bool(false)
204: -- Iteration 18 --
205: bool(false)
206: -- Iteration 19 --
207: bool(false)
208: -- Iteration 20 --
209: bool(false)
210: -- Iteration 21 --
211: bool(false)
212: -- Iteration 22 --
213: bool(false)
214: -- Iteration 23 --
215: bool(false)
216: -- Iteration 24 --
217: bool(false)
218: -- Iteration 25 --
219: bool(false)
220: -- Iteration 26 --
221: bool(false)
222: -- Iteration 27 --
223: bool(false)
224: -- Iteration 28 --
225: bool(false)
226: -- Iteration 29 --
227: bool(false)
228: -- Iteration 30 --
229: bool(false)
230: -- Iteration 31 --
231: bool(false)
232: -- Iteration 32 --
233: bool(false)
234: -- Iteration 33 --
235: bool(false)
236: -- Iteration 34 --
237: bool(false)
238: -- Iteration 35 --
239: bool(false)
240: -- Iteration 36 --
241: bool(false)
242: -- Iteration 37 --
243: bool(false)
244: -- Iteration 38 --
245: bool(false)
246: -- Iteration 39 --
247: bool(false)
248: -- Iteration 40 --
249: bool(false)
250: -- Iteration 41 --
251: bool(false)
252: -- Iteration 42 --
253: bool(false)
254: -- Iteration 43 --
255: bool(false)
256: -- Iteration 44 --
257: bool(false)
258: -- Iteration 45 --
259: bool(false)
260: -- Iteration 46 --
261: bool(false)
262: -- Iteration 47 --
263: bool(false)
264: -- Iteration 48 --
265: bool(false)
266: -- Iteration 49 --
267: bool(false)
268: -- Iteration 50 --
269: bool(false)
270: -- Iteration 51 --
271: bool(false)
272: -- Iteration 52 --
273: bool(false)
274: -- Iteration 53 --
275: bool(false)
276: -- Iteration 54 --
277: bool(false)
278: -- Iteration 55 --
279: bool(false)
280: -- Iteration 56 --
281: bool(false)
282: -- Iteration 57 --
283: bool(false)
284: -- Iteration 58 --
285: bool(false)
286: -- Iteration 59 --
287: bool(false)
288:
289: *** Testing error conditions ***
290:
291: Warning: is_null() expects exactly 1 parameter, 0 given in %s on line %d
292: bool(false)
293:
294: Warning: is_null() expects exactly 1 parameter, 2 given in %s on line %d
295: bool(false)
296: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>