Annotation of embedaddon/php/ext/standard/tests/file/fgets_variation4-win32.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test fgets() function : usage variations - seek n read
3: --SKIPIF--
4: <?php
5: if (substr(PHP_OS, 0, 3) != 'WIN') {
6: die('skip only valid for Windows');
7: }
8: ?>
9: --FILE--
10: <?php
11: /*
12: Prototype: string fgets ( resource $handle [, int $length] );
13: Description: Gets a line from file pointer
14: */
15:
16: // include the file.inc for common test funcitons
17: include ("file.inc");
18:
19: $file_modes = array("w+", "w+b", "w+t",
20: "a+", "a+b", "a+t",
21: "x+", "x+b", "x+t");
22:
23: $file_content_types = array("numeric", "text", "text_with_new_line", "alphanumeric");
24:
25: echo "*** Testing fgets() : usage variations ***\n";
26:
27: $filename = dirname(__FILE__)."/fgets_variation4.tmp";
28:
29: foreach($file_modes as $file_mode) {
30: echo "\n-- Testing fgets() with file opened using mode $file_mode --\n";
31:
32: foreach($file_content_types as $file_content_type) {
33: echo "-- File content type : $file_content_type --\n";
34:
35: /* create files with $file_content_type */
36: $file_handle = fopen($filename, $file_mode);
37: $data = fill_file($file_handle, $file_content_type, 50);
38:
39: if ( !$file_handle ) {
40: echo "Error: failed to open file $filename!";
41: exit();
42: }
43:
44: echo "-- fgets() with location set by fseek() with default length --\n";
45: var_dump( fseek($file_handle, 5, SEEK_SET) );
46: var_dump( ftell($file_handle) );
47: var_dump( fgets($file_handle ) );
48: var_dump( ftell($file_handle) ); // ensure the file pointer position
49: var_dump( feof($file_handle) ); // enusre if eof set
50:
51: echo "-- fgets() with location set by fseek() with length = 20 --\n";
52: var_dump( fseek($file_handle, 25, SEEK_SET) );
53: var_dump( ftell($file_handle) );
54: var_dump( fgets($file_handle, 20 ) ); // expected 19 chars
55: var_dump( ftell($file_handle) ); // ensure the file pointer position
56: var_dump( feof($file_handle) ); // enusre if eof set
57:
58: //close file
59: fclose($file_handle);
60:
61: // delete file
62: delete_file($filename);
63: } // file_content_type loop
64: } // file_mode loop
65:
66: echo "Done\n";
67: ?>
68: --EXPECTF--
69: *** Testing fgets() : usage variations ***
70:
71: -- Testing fgets() with file opened using mode w+ --
72: -- File content type : numeric --
73: -- fgets() with location set by fseek() with default length --
74: int(0)
75: int(5)
76: string(45) "222222222222222222222222222222222222222222222"
77: int(50)
78: bool(true)
79: -- fgets() with location set by fseek() with length = 20 --
80: int(0)
81: int(25)
82: string(19) "2222222222222222222"
83: int(44)
84: bool(false)
85: -- File content type : text --
86: -- fgets() with location set by fseek() with default length --
87: int(0)
88: int(5)
89: string(45) "text text text text text text text text text "
90: int(50)
91: bool(true)
92: -- fgets() with location set by fseek() with length = 20 --
93: int(0)
94: int(25)
95: string(19) "text text text text"
96: int(44)
97: bool(false)
98: -- File content type : text_with_new_line --
99: -- fgets() with location set by fseek() with default length --
100: int(0)
101: int(5)
102: string(13) "line of text
103: "
104: int(18)
105: bool(false)
106: -- fgets() with location set by fseek() with length = 20 --
107: int(0)
108: int(25)
109: string(11) "ne of text
110: "
111: int(36)
112: bool(false)
113: -- File content type : alphanumeric --
114: -- fgets() with location set by fseek() with default length --
115: int(0)
116: int(5)
117: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
118: int(50)
119: bool(true)
120: -- fgets() with location set by fseek() with length = 20 --
121: int(0)
122: int(25)
123: string(19) "ab12 ab12 ab12 ab12"
124: int(44)
125: bool(false)
126:
127: -- Testing fgets() with file opened using mode w+b --
128: -- File content type : numeric --
129: -- fgets() with location set by fseek() with default length --
130: int(0)
131: int(5)
132: string(45) "222222222222222222222222222222222222222222222"
133: int(50)
134: bool(true)
135: -- fgets() with location set by fseek() with length = 20 --
136: int(0)
137: int(25)
138: string(19) "2222222222222222222"
139: int(44)
140: bool(false)
141: -- File content type : text --
142: -- fgets() with location set by fseek() with default length --
143: int(0)
144: int(5)
145: string(45) "text text text text text text text text text "
146: int(50)
147: bool(true)
148: -- fgets() with location set by fseek() with length = 20 --
149: int(0)
150: int(25)
151: string(19) "text text text text"
152: int(44)
153: bool(false)
154: -- File content type : text_with_new_line --
155: -- fgets() with location set by fseek() with default length --
156: int(0)
157: int(5)
158: string(13) "line of text
159: "
160: int(18)
161: bool(false)
162: -- fgets() with location set by fseek() with length = 20 --
163: int(0)
164: int(25)
165: string(11) "ne of text
166: "
167: int(36)
168: bool(false)
169: -- File content type : alphanumeric --
170: -- fgets() with location set by fseek() with default length --
171: int(0)
172: int(5)
173: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
174: int(50)
175: bool(true)
176: -- fgets() with location set by fseek() with length = 20 --
177: int(0)
178: int(25)
179: string(19) "ab12 ab12 ab12 ab12"
180: int(44)
181: bool(false)
182:
183: -- Testing fgets() with file opened using mode w+t --
184: -- File content type : numeric --
185: -- fgets() with location set by fseek() with default length --
186: int(0)
187: int(5)
188: string(45) "222222222222222222222222222222222222222222222"
189: int(50)
190: bool(true)
191: -- fgets() with location set by fseek() with length = 20 --
192: int(0)
193: int(25)
194: string(19) "2222222222222222222"
195: int(44)
196: bool(false)
197: -- File content type : text --
198: -- fgets() with location set by fseek() with default length --
199: int(0)
200: int(5)
201: string(45) "text text text text text text text text text "
202: int(50)
203: bool(true)
204: -- fgets() with location set by fseek() with length = 20 --
205: int(0)
206: int(25)
207: string(19) "text text text text"
208: int(44)
209: bool(false)
210: -- File content type : text_with_new_line --
211: -- fgets() with location set by fseek() with default length --
212: int(0)
213: int(5)
214: string(1) "
215: "
216: int(6)
217: bool(false)
218: -- fgets() with location set by fseek() with length = 20 --
219: int(0)
220: int(25)
221: string(12) "ine of text
222: "
223: int(37)
224: bool(false)
225: -- File content type : alphanumeric --
226: -- fgets() with location set by fseek() with default length --
227: int(0)
228: int(5)
229: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
230: int(50)
231: bool(true)
232: -- fgets() with location set by fseek() with length = 20 --
233: int(0)
234: int(25)
235: string(19) "ab12 ab12 ab12 ab12"
236: int(44)
237: bool(false)
238:
239: -- Testing fgets() with file opened using mode a+ --
240: -- File content type : numeric --
241: -- fgets() with location set by fseek() with default length --
242: int(0)
243: int(5)
244: string(45) "222222222222222222222222222222222222222222222"
245: int(50)
246: bool(true)
247: -- fgets() with location set by fseek() with length = 20 --
248: int(0)
249: int(25)
250: string(19) "2222222222222222222"
251: int(44)
252: bool(false)
253: -- File content type : text --
254: -- fgets() with location set by fseek() with default length --
255: int(0)
256: int(5)
257: string(45) "text text text text text text text text text "
258: int(50)
259: bool(true)
260: -- fgets() with location set by fseek() with length = 20 --
261: int(0)
262: int(25)
263: string(19) "text text text text"
264: int(44)
265: bool(false)
266: -- File content type : text_with_new_line --
267: -- fgets() with location set by fseek() with default length --
268: int(0)
269: int(5)
270: string(13) "line of text
271: "
272: int(18)
273: bool(false)
274: -- fgets() with location set by fseek() with length = 20 --
275: int(0)
276: int(25)
277: string(11) "ne of text
278: "
279: int(36)
280: bool(false)
281: -- File content type : alphanumeric --
282: -- fgets() with location set by fseek() with default length --
283: int(0)
284: int(5)
285: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
286: int(50)
287: bool(true)
288: -- fgets() with location set by fseek() with length = 20 --
289: int(0)
290: int(25)
291: string(19) "ab12 ab12 ab12 ab12"
292: int(44)
293: bool(false)
294:
295: -- Testing fgets() with file opened using mode a+b --
296: -- File content type : numeric --
297: -- fgets() with location set by fseek() with default length --
298: int(0)
299: int(5)
300: string(45) "222222222222222222222222222222222222222222222"
301: int(50)
302: bool(true)
303: -- fgets() with location set by fseek() with length = 20 --
304: int(0)
305: int(25)
306: string(19) "2222222222222222222"
307: int(44)
308: bool(false)
309: -- File content type : text --
310: -- fgets() with location set by fseek() with default length --
311: int(0)
312: int(5)
313: string(45) "text text text text text text text text text "
314: int(50)
315: bool(true)
316: -- fgets() with location set by fseek() with length = 20 --
317: int(0)
318: int(25)
319: string(19) "text text text text"
320: int(44)
321: bool(false)
322: -- File content type : text_with_new_line --
323: -- fgets() with location set by fseek() with default length --
324: int(0)
325: int(5)
326: string(13) "line of text
327: "
328: int(18)
329: bool(false)
330: -- fgets() with location set by fseek() with length = 20 --
331: int(0)
332: int(25)
333: string(11) "ne of text
334: "
335: int(36)
336: bool(false)
337: -- File content type : alphanumeric --
338: -- fgets() with location set by fseek() with default length --
339: int(0)
340: int(5)
341: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
342: int(50)
343: bool(true)
344: -- fgets() with location set by fseek() with length = 20 --
345: int(0)
346: int(25)
347: string(19) "ab12 ab12 ab12 ab12"
348: int(44)
349: bool(false)
350:
351: -- Testing fgets() with file opened using mode a+t --
352: -- File content type : numeric --
353: -- fgets() with location set by fseek() with default length --
354: int(0)
355: int(5)
356: string(45) "222222222222222222222222222222222222222222222"
357: int(50)
358: bool(true)
359: -- fgets() with location set by fseek() with length = 20 --
360: int(0)
361: int(25)
362: string(19) "2222222222222222222"
363: int(44)
364: bool(false)
365: -- File content type : text --
366: -- fgets() with location set by fseek() with default length --
367: int(0)
368: int(5)
369: string(45) "text text text text text text text text text "
370: int(50)
371: bool(true)
372: -- fgets() with location set by fseek() with length = 20 --
373: int(0)
374: int(25)
375: string(19) "text text text text"
376: int(44)
377: bool(false)
378: -- File content type : text_with_new_line --
379: -- fgets() with location set by fseek() with default length --
380: int(0)
381: int(5)
382: string(1) "
383: "
384: int(6)
385: bool(false)
386: -- fgets() with location set by fseek() with length = 20 --
387: int(0)
388: int(25)
389: string(12) "ine of text
390: "
391: int(37)
392: bool(false)
393: -- File content type : alphanumeric --
394: -- fgets() with location set by fseek() with default length --
395: int(0)
396: int(5)
397: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
398: int(50)
399: bool(true)
400: -- fgets() with location set by fseek() with length = 20 --
401: int(0)
402: int(25)
403: string(19) "ab12 ab12 ab12 ab12"
404: int(44)
405: bool(false)
406:
407: -- Testing fgets() with file opened using mode x+ --
408: -- File content type : numeric --
409: -- fgets() with location set by fseek() with default length --
410: int(0)
411: int(5)
412: string(45) "222222222222222222222222222222222222222222222"
413: int(50)
414: bool(true)
415: -- fgets() with location set by fseek() with length = 20 --
416: int(0)
417: int(25)
418: string(19) "2222222222222222222"
419: int(44)
420: bool(false)
421: -- File content type : text --
422: -- fgets() with location set by fseek() with default length --
423: int(0)
424: int(5)
425: string(45) "text text text text text text text text text "
426: int(50)
427: bool(true)
428: -- fgets() with location set by fseek() with length = 20 --
429: int(0)
430: int(25)
431: string(19) "text text text text"
432: int(44)
433: bool(false)
434: -- File content type : text_with_new_line --
435: -- fgets() with location set by fseek() with default length --
436: int(0)
437: int(5)
438: string(13) "line of text
439: "
440: int(18)
441: bool(false)
442: -- fgets() with location set by fseek() with length = 20 --
443: int(0)
444: int(25)
445: string(11) "ne of text
446: "
447: int(36)
448: bool(false)
449: -- File content type : alphanumeric --
450: -- fgets() with location set by fseek() with default length --
451: int(0)
452: int(5)
453: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
454: int(50)
455: bool(true)
456: -- fgets() with location set by fseek() with length = 20 --
457: int(0)
458: int(25)
459: string(19) "ab12 ab12 ab12 ab12"
460: int(44)
461: bool(false)
462:
463: -- Testing fgets() with file opened using mode x+b --
464: -- File content type : numeric --
465: -- fgets() with location set by fseek() with default length --
466: int(0)
467: int(5)
468: string(45) "222222222222222222222222222222222222222222222"
469: int(50)
470: bool(true)
471: -- fgets() with location set by fseek() with length = 20 --
472: int(0)
473: int(25)
474: string(19) "2222222222222222222"
475: int(44)
476: bool(false)
477: -- File content type : text --
478: -- fgets() with location set by fseek() with default length --
479: int(0)
480: int(5)
481: string(45) "text text text text text text text text text "
482: int(50)
483: bool(true)
484: -- fgets() with location set by fseek() with length = 20 --
485: int(0)
486: int(25)
487: string(19) "text text text text"
488: int(44)
489: bool(false)
490: -- File content type : text_with_new_line --
491: -- fgets() with location set by fseek() with default length --
492: int(0)
493: int(5)
494: string(13) "line of text
495: "
496: int(18)
497: bool(false)
498: -- fgets() with location set by fseek() with length = 20 --
499: int(0)
500: int(25)
501: string(11) "ne of text
502: "
503: int(36)
504: bool(false)
505: -- File content type : alphanumeric --
506: -- fgets() with location set by fseek() with default length --
507: int(0)
508: int(5)
509: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
510: int(50)
511: bool(true)
512: -- fgets() with location set by fseek() with length = 20 --
513: int(0)
514: int(25)
515: string(19) "ab12 ab12 ab12 ab12"
516: int(44)
517: bool(false)
518:
519: -- Testing fgets() with file opened using mode x+t --
520: -- File content type : numeric --
521: -- fgets() with location set by fseek() with default length --
522: int(0)
523: int(5)
524: string(45) "222222222222222222222222222222222222222222222"
525: int(50)
526: bool(true)
527: -- fgets() with location set by fseek() with length = 20 --
528: int(0)
529: int(25)
530: string(19) "2222222222222222222"
531: int(44)
532: bool(false)
533: -- File content type : text --
534: -- fgets() with location set by fseek() with default length --
535: int(0)
536: int(5)
537: string(45) "text text text text text text text text text "
538: int(50)
539: bool(true)
540: -- fgets() with location set by fseek() with length = 20 --
541: int(0)
542: int(25)
543: string(19) "text text text text"
544: int(44)
545: bool(false)
546: -- File content type : text_with_new_line --
547: -- fgets() with location set by fseek() with default length --
548: int(0)
549: int(5)
550: string(1) "
551: "
552: int(6)
553: bool(false)
554: -- fgets() with location set by fseek() with length = 20 --
555: int(0)
556: int(25)
557: string(12) "ine of text
558: "
559: int(37)
560: bool(false)
561: -- File content type : alphanumeric --
562: -- fgets() with location set by fseek() with default length --
563: int(0)
564: int(5)
565: string(45) "ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 ab12 "
566: int(50)
567: bool(true)
568: -- fgets() with location set by fseek() with length = 20 --
569: int(0)
570: int(25)
571: string(19) "ab12 ab12 ab12 ab12"
572: int(44)
573: bool(false)
574: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>