Annotation of embedaddon/php/ext/standard/tests/file/fseek_ftell_rewind_variation7.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: Test fseek(), ftell() & rewind() functions : usage variations - all r and a modes, SEEK_END
3: --FILE--
4: <?php
5: /* Prototype: int fseek ( resource $handle, int $offset [, int $whence] );
6: Description: Seeks on a file pointer
7:
8: Prototype: bool rewind ( resource $handle );
9: Description: Rewind the position of a file pointer
10:
11: Prototype: int ftell ( resource $handle );
12: Description: Tells file pointer read/write position
13: */
14:
15: // include the file.inc for common functions for test
16: include ("file.inc");
17:
18: /* Testing fseek(),ftell(),rewind() functions
19: 1. All read and append modes
20: 2. Testing fseek() with whence = SEEK_END
21: */
22:
23: echo "*** Testing fseek(), ftell(), rewind() : whence = SEEK_END & all r and a modes ***\n";
24:
25: $file_modes = array( "r","rb","rt","r+","r+b","r+t",
26: "a","ab","at","a+","a+b","a+t");
27: $file_content_types = array( "text_with_new_line","alphanumeric");
28:
29: $offset = array(-1,0,1,512,600);// different offsets
30:
31: $filename = dirname(__FILE__)."/fseek_ftell_rewind_variation7.tmp"; // this is name of the file created by create_files()
32:
33: /* open the file using $files_modes and perform fseek(),ftell() and rewind() on it */
34: foreach($file_content_types as $file_content_type){
35: echo "\n-- File having data of type ". $file_content_type ." --\n";
36: foreach($file_modes as $file_mode) {
37: echo "-- File opened in mode ".$file_mode." --\n";
38: create_files ( dirname(__FILE__), 1, $file_content_type, 0755, 512, "w", "fseek_ftell_rewind_variation"
39: ,7,"bytes",".tmp"); //create a file with 512 bytes size
40: $file_handle = fopen($filename, $file_mode);
41: if (!$file_handle) {
42: echo "Error: failed to fopen() file: $filename!";
43: exit();
44: }
45: rewind($file_handle);
46: foreach($offset as $count){
47: var_dump( fseek($file_handle,$count,SEEK_END) );
48: var_dump( ftell($file_handle) ); // confirm the file pointer position
49: var_dump( feof($file_handle) ); //ensure that file pointer is not at end
50: } //end of offset loop
51:
52: //close the file and check the size, the size will have increased
53: // by 10 bytes because of holes
54: fclose($file_handle);
55: var_dump( filesize($filename) );
56:
57: delete_file($filename); // delete file with name
58: } //end of file_mode loop
59: } //end of file_content_types loop
60:
61: echo "Done\n";
62: ?>
63: --EXPECTF--
64: *** Testing fseek(), ftell(), rewind() : whence = SEEK_END & all r and a modes ***
65:
66: -- File having data of type text_with_new_line --
67: -- File opened in mode r --
68: int(0)
69: int(511)
70: bool(false)
71: int(0)
72: int(512)
73: bool(false)
74: int(0)
75: int(513)
76: bool(false)
77: int(0)
78: int(1024)
79: bool(false)
80: int(0)
81: int(1112)
82: bool(false)
83: int(512)
84: -- File opened in mode rb --
85: int(0)
86: int(511)
87: bool(false)
88: int(0)
89: int(512)
90: bool(false)
91: int(0)
92: int(513)
93: bool(false)
94: int(0)
95: int(1024)
96: bool(false)
97: int(0)
98: int(1112)
99: bool(false)
100: int(512)
101: -- File opened in mode rt --
102: int(0)
103: int(511)
104: bool(false)
105: int(0)
106: int(512)
107: bool(false)
108: int(0)
109: int(513)
110: bool(false)
111: int(0)
112: int(1024)
113: bool(false)
114: int(0)
115: int(1112)
116: bool(false)
117: int(512)
118: -- File opened in mode r+ --
119: int(0)
120: int(511)
121: bool(false)
122: int(0)
123: int(512)
124: bool(false)
125: int(0)
126: int(513)
127: bool(false)
128: int(0)
129: int(1024)
130: bool(false)
131: int(0)
132: int(1112)
133: bool(false)
134: int(512)
135: -- File opened in mode r+b --
136: int(0)
137: int(511)
138: bool(false)
139: int(0)
140: int(512)
141: bool(false)
142: int(0)
143: int(513)
144: bool(false)
145: int(0)
146: int(1024)
147: bool(false)
148: int(0)
149: int(1112)
150: bool(false)
151: int(512)
152: -- File opened in mode r+t --
153: int(0)
154: int(511)
155: bool(false)
156: int(0)
157: int(512)
158: bool(false)
159: int(0)
160: int(513)
161: bool(false)
162: int(0)
163: int(1024)
164: bool(false)
165: int(0)
166: int(1112)
167: bool(false)
168: int(512)
169: -- File opened in mode a --
170: int(0)
171: int(511)
172: bool(false)
173: int(0)
174: int(512)
175: bool(false)
176: int(0)
177: int(513)
178: bool(false)
179: int(0)
180: int(1024)
181: bool(false)
182: int(0)
183: int(1112)
184: bool(false)
185: int(512)
186: -- File opened in mode ab --
187: int(0)
188: int(511)
189: bool(false)
190: int(0)
191: int(512)
192: bool(false)
193: int(0)
194: int(513)
195: bool(false)
196: int(0)
197: int(1024)
198: bool(false)
199: int(0)
200: int(1112)
201: bool(false)
202: int(512)
203: -- File opened in mode at --
204: int(0)
205: int(511)
206: bool(false)
207: int(0)
208: int(512)
209: bool(false)
210: int(0)
211: int(513)
212: bool(false)
213: int(0)
214: int(1024)
215: bool(false)
216: int(0)
217: int(1112)
218: bool(false)
219: int(512)
220: -- File opened in mode a+ --
221: int(0)
222: int(511)
223: bool(false)
224: int(0)
225: int(512)
226: bool(false)
227: int(0)
228: int(513)
229: bool(false)
230: int(0)
231: int(1024)
232: bool(false)
233: int(0)
234: int(1112)
235: bool(false)
236: int(512)
237: -- File opened in mode a+b --
238: int(0)
239: int(511)
240: bool(false)
241: int(0)
242: int(512)
243: bool(false)
244: int(0)
245: int(513)
246: bool(false)
247: int(0)
248: int(1024)
249: bool(false)
250: int(0)
251: int(1112)
252: bool(false)
253: int(512)
254: -- File opened in mode a+t --
255: int(0)
256: int(511)
257: bool(false)
258: int(0)
259: int(512)
260: bool(false)
261: int(0)
262: int(513)
263: bool(false)
264: int(0)
265: int(1024)
266: bool(false)
267: int(0)
268: int(1112)
269: bool(false)
270: int(512)
271:
272: -- File having data of type alphanumeric --
273: -- File opened in mode r --
274: int(0)
275: int(511)
276: bool(false)
277: int(0)
278: int(512)
279: bool(false)
280: int(0)
281: int(513)
282: bool(false)
283: int(0)
284: int(1024)
285: bool(false)
286: int(0)
287: int(1112)
288: bool(false)
289: int(512)
290: -- File opened in mode rb --
291: int(0)
292: int(511)
293: bool(false)
294: int(0)
295: int(512)
296: bool(false)
297: int(0)
298: int(513)
299: bool(false)
300: int(0)
301: int(1024)
302: bool(false)
303: int(0)
304: int(1112)
305: bool(false)
306: int(512)
307: -- File opened in mode rt --
308: int(0)
309: int(511)
310: bool(false)
311: int(0)
312: int(512)
313: bool(false)
314: int(0)
315: int(513)
316: bool(false)
317: int(0)
318: int(1024)
319: bool(false)
320: int(0)
321: int(1112)
322: bool(false)
323: int(512)
324: -- File opened in mode r+ --
325: int(0)
326: int(511)
327: bool(false)
328: int(0)
329: int(512)
330: bool(false)
331: int(0)
332: int(513)
333: bool(false)
334: int(0)
335: int(1024)
336: bool(false)
337: int(0)
338: int(1112)
339: bool(false)
340: int(512)
341: -- File opened in mode r+b --
342: int(0)
343: int(511)
344: bool(false)
345: int(0)
346: int(512)
347: bool(false)
348: int(0)
349: int(513)
350: bool(false)
351: int(0)
352: int(1024)
353: bool(false)
354: int(0)
355: int(1112)
356: bool(false)
357: int(512)
358: -- File opened in mode r+t --
359: int(0)
360: int(511)
361: bool(false)
362: int(0)
363: int(512)
364: bool(false)
365: int(0)
366: int(513)
367: bool(false)
368: int(0)
369: int(1024)
370: bool(false)
371: int(0)
372: int(1112)
373: bool(false)
374: int(512)
375: -- File opened in mode a --
376: int(0)
377: int(511)
378: bool(false)
379: int(0)
380: int(512)
381: bool(false)
382: int(0)
383: int(513)
384: bool(false)
385: int(0)
386: int(1024)
387: bool(false)
388: int(0)
389: int(1112)
390: bool(false)
391: int(512)
392: -- File opened in mode ab --
393: int(0)
394: int(511)
395: bool(false)
396: int(0)
397: int(512)
398: bool(false)
399: int(0)
400: int(513)
401: bool(false)
402: int(0)
403: int(1024)
404: bool(false)
405: int(0)
406: int(1112)
407: bool(false)
408: int(512)
409: -- File opened in mode at --
410: int(0)
411: int(511)
412: bool(false)
413: int(0)
414: int(512)
415: bool(false)
416: int(0)
417: int(513)
418: bool(false)
419: int(0)
420: int(1024)
421: bool(false)
422: int(0)
423: int(1112)
424: bool(false)
425: int(512)
426: -- File opened in mode a+ --
427: int(0)
428: int(511)
429: bool(false)
430: int(0)
431: int(512)
432: bool(false)
433: int(0)
434: int(513)
435: bool(false)
436: int(0)
437: int(1024)
438: bool(false)
439: int(0)
440: int(1112)
441: bool(false)
442: int(512)
443: -- File opened in mode a+b --
444: int(0)
445: int(511)
446: bool(false)
447: int(0)
448: int(512)
449: bool(false)
450: int(0)
451: int(513)
452: bool(false)
453: int(0)
454: int(1024)
455: bool(false)
456: int(0)
457: int(1112)
458: bool(false)
459: int(512)
460: -- File opened in mode a+t --
461: int(0)
462: int(511)
463: bool(false)
464: int(0)
465: int(512)
466: bool(false)
467: int(0)
468: int(513)
469: bool(false)
470: int(0)
471: int(1024)
472: bool(false)
473: int(0)
474: int(1112)
475: bool(false)
476: int(512)
477: Done
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>