Annotation of embedaddon/php/ext/standard/tests/general_functions/type.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: gettype(), settype() and friends
3: --FILE--
4: <?php
5:
6: function foo($errno, $errstr, $errfile, $errline) {
7: var_dump($errstr);
8: }
9:
10: set_error_handler("foo");
11:
12: $fp = fopen(__FILE__, "r");
13: fclose($fp);
14: $fp1 = fopen(__FILE__, "r");
15:
16: $var1 = "another string";
17: $var2 = array(2,3,4);
18:
19: $array = array(
20: array(1,2,3),
21: $var1,
22: $var2,
23: 1,
24: 2.0,
25: NULL,
26: false,
27: "some string",
28: $fp,
29: $fp1,
30: new stdclass,
31: );
32:
33: $types = array(
34: "null",
35: "integer",
36: "double",
37: "boolean",
38: "resource",
39: "array",
40: "object",
41: "string"
42: );
43:
44: foreach ($array as $var) {
45: var_dump(gettype($var));
46: }
47:
48: foreach ($types as $type) {
49: foreach ($array as $var) {
50: var_dump(settype($var, $type));
51: var_dump($var);
52: }
53: }
54:
55: echo "Done\n";
56: ?>
57: --EXPECTF--
58: string(5) "array"
59: string(6) "string"
60: string(5) "array"
61: string(7) "integer"
62: string(6) "double"
63: string(4) "NULL"
64: string(7) "boolean"
65: string(6) "string"
66: string(12) "unknown type"
67: string(8) "resource"
68: string(6) "object"
69: bool(true)
70: NULL
71: bool(true)
72: NULL
73: bool(true)
74: NULL
75: bool(true)
76: NULL
77: bool(true)
78: NULL
79: bool(true)
80: NULL
81: bool(true)
82: NULL
83: bool(true)
84: NULL
85: bool(true)
86: NULL
87: bool(true)
88: NULL
89: bool(true)
90: NULL
91: bool(true)
92: int(1)
93: bool(true)
94: int(0)
95: bool(true)
96: int(1)
97: bool(true)
98: int(1)
99: bool(true)
100: int(2)
101: bool(true)
102: int(0)
103: bool(true)
104: int(0)
105: bool(true)
106: int(0)
107: bool(true)
108: int(5)
109: bool(true)
110: int(6)
111: string(54) "Object of class stdClass could not be converted to int"
112: bool(true)
113: int(%d)
114: bool(true)
115: float(1)
116: bool(true)
117: float(0)
118: bool(true)
119: float(1)
120: bool(true)
121: float(1)
122: bool(true)
123: float(2)
124: bool(true)
125: float(0)
126: bool(true)
127: float(0)
128: bool(true)
129: float(0)
130: bool(true)
131: float(5)
132: bool(true)
133: float(6)
134: string(57) "Object of class stdClass could not be converted to double"
135: bool(true)
136: float(%d)
137: bool(true)
138: bool(true)
139: bool(true)
140: bool(true)
141: bool(true)
142: bool(true)
143: bool(true)
144: bool(true)
145: bool(true)
146: bool(true)
147: bool(true)
148: bool(false)
149: bool(true)
150: bool(false)
151: bool(true)
152: bool(true)
153: bool(true)
154: bool(true)
155: bool(true)
156: bool(true)
157: bool(true)
158: bool(true)
159: string(42) "settype(): Cannot convert to resource type"
160: bool(false)
161: array(3) {
162: [0]=>
163: int(1)
164: [1]=>
165: int(2)
166: [2]=>
167: int(3)
168: }
169: string(42) "settype(): Cannot convert to resource type"
170: bool(false)
171: string(14) "another string"
172: string(42) "settype(): Cannot convert to resource type"
173: bool(false)
174: array(3) {
175: [0]=>
176: int(2)
177: [1]=>
178: int(3)
179: [2]=>
180: int(4)
181: }
182: string(42) "settype(): Cannot convert to resource type"
183: bool(false)
184: int(1)
185: string(42) "settype(): Cannot convert to resource type"
186: bool(false)
187: float(2)
188: string(42) "settype(): Cannot convert to resource type"
189: bool(false)
190: NULL
191: string(42) "settype(): Cannot convert to resource type"
192: bool(false)
193: bool(false)
194: string(42) "settype(): Cannot convert to resource type"
195: bool(false)
196: string(11) "some string"
197: string(42) "settype(): Cannot convert to resource type"
198: bool(false)
199: resource(%d) of type (Unknown)
200: string(42) "settype(): Cannot convert to resource type"
201: bool(false)
202: resource(%d) of type (stream)
203: string(42) "settype(): Cannot convert to resource type"
204: bool(false)
205: object(stdClass)#%d (0) {
206: }
207: bool(true)
208: array(3) {
209: [0]=>
210: int(1)
211: [1]=>
212: int(2)
213: [2]=>
214: int(3)
215: }
216: bool(true)
217: array(1) {
218: [0]=>
219: string(14) "another string"
220: }
221: bool(true)
222: array(3) {
223: [0]=>
224: int(2)
225: [1]=>
226: int(3)
227: [2]=>
228: int(4)
229: }
230: bool(true)
231: array(1) {
232: [0]=>
233: int(1)
234: }
235: bool(true)
236: array(1) {
237: [0]=>
238: float(2)
239: }
240: bool(true)
241: array(0) {
242: }
243: bool(true)
244: array(1) {
245: [0]=>
246: bool(false)
247: }
248: bool(true)
249: array(1) {
250: [0]=>
251: string(11) "some string"
252: }
253: bool(true)
254: array(1) {
255: [0]=>
256: resource(%d) of type (Unknown)
257: }
258: bool(true)
259: array(1) {
260: [0]=>
261: resource(%d) of type (stream)
262: }
263: bool(true)
264: array(0) {
265: }
266: bool(true)
267: object(stdClass)#%d (3) {
268: [0]=>
269: int(1)
270: [1]=>
271: int(2)
272: [2]=>
273: int(3)
274: }
275: bool(true)
276: object(stdClass)#%d (1) {
277: ["scalar"]=>
278: string(14) "another string"
279: }
280: bool(true)
281: object(stdClass)#%d (3) {
282: [0]=>
283: int(2)
284: [1]=>
285: int(3)
286: [2]=>
287: int(4)
288: }
289: bool(true)
290: object(stdClass)#%d (1) {
291: ["scalar"]=>
292: int(1)
293: }
294: bool(true)
295: object(stdClass)#%d (1) {
296: ["scalar"]=>
297: float(2)
298: }
299: bool(true)
300: object(stdClass)#%d (0) {
301: }
302: bool(true)
303: object(stdClass)#%d (1) {
304: ["scalar"]=>
305: bool(false)
306: }
307: bool(true)
308: object(stdClass)#%d (1) {
309: ["scalar"]=>
310: string(11) "some string"
311: }
312: bool(true)
313: object(stdClass)#%d (1) {
314: ["scalar"]=>
315: resource(%d) of type (Unknown)
316: }
317: bool(true)
318: object(stdClass)#%d (1) {
319: ["scalar"]=>
320: resource(%d) of type (stream)
321: }
322: bool(true)
323: object(stdClass)#%d (0) {
324: }
325: string(26) "Array to string conversion"
326: bool(true)
327: string(5) "Array"
328: bool(true)
329: string(14) "another string"
330: string(26) "Array to string conversion"
331: bool(true)
332: string(5) "Array"
333: bool(true)
334: string(1) "1"
335: bool(true)
336: string(1) "2"
337: bool(true)
338: string(0) ""
339: bool(true)
340: string(0) ""
341: bool(true)
342: string(11) "some string"
343: bool(true)
344: string(14) "Resource id #%d"
345: bool(true)
346: string(14) "Resource id #%d"
347: string(57) "Object of class stdClass could not be converted to string"
348: string(45) "Object of class stdClass to string conversion"
349: bool(true)
350: string(6) "Object"
351: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>