Return to stream_get_meta_data_file_variation1.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / streams |
1.1 misho 1: --TEST-- 2: stream_get_meta_data() with differing file access modes 3: --FILE-- 4: <?php 5: 6: // array of all file access modes 7: $filemodes = array('r', 'r+', 'w', 'w+', 'a', 'a+', 'x', 'x+', 8: 'rb', 'rb+', 'wb', 'wb+', 'ab', 'ab+', 'xb', 'xb+', 9: 'rt', 'rt+', 'wt', 'wt+', 'at', 'at+', 'xt', 'xt+'); 10: 11: //create a file 12: $filename = __FILE__ . '.tmp'; 13: $fp = fopen($filename, 'w+'); 14: fclose($fp); 15: 16: // open file in each access mode and get meta data 17: foreach ($filemodes as $mode) { 18: if (strncmp($mode, 'x', 1) == 0) { 19: // x modes require that file does not exist 20: unlink($filename); 21: } 22: $fp = fopen($filename, $mode); 23: var_dump(stream_get_meta_data($fp)); 24: fclose($fp); 25: } 26: 27: unlink($filename); 28: 29: ?> 30: --EXPECTF-- 31: array(9) { 32: ["wrapper_type"]=> 33: string(9) "plainfile" 34: ["stream_type"]=> 35: string(5) "STDIO" 36: ["mode"]=> 37: string(1) "r" 38: ["unread_bytes"]=> 39: int(0) 40: ["seekable"]=> 41: bool(true) 42: ["uri"]=> 43: string(%i) "%s.tmp" 44: ["timed_out"]=> 45: bool(false) 46: ["blocked"]=> 47: bool(true) 48: ["eof"]=> 49: bool(false) 50: } 51: array(9) { 52: ["wrapper_type"]=> 53: string(9) "plainfile" 54: ["stream_type"]=> 55: string(5) "STDIO" 56: ["mode"]=> 57: string(2) "r+" 58: ["unread_bytes"]=> 59: int(0) 60: ["seekable"]=> 61: bool(true) 62: ["uri"]=> 63: string(%i) "%s.tmp" 64: ["timed_out"]=> 65: bool(false) 66: ["blocked"]=> 67: bool(true) 68: ["eof"]=> 69: bool(false) 70: } 71: array(9) { 72: ["wrapper_type"]=> 73: string(9) "plainfile" 74: ["stream_type"]=> 75: string(5) "STDIO" 76: ["mode"]=> 77: string(1) "w" 78: ["unread_bytes"]=> 79: int(0) 80: ["seekable"]=> 81: bool(true) 82: ["uri"]=> 83: string(%i) "%s.tmp" 84: ["timed_out"]=> 85: bool(false) 86: ["blocked"]=> 87: bool(true) 88: ["eof"]=> 89: bool(false) 90: } 91: array(9) { 92: ["wrapper_type"]=> 93: string(9) "plainfile" 94: ["stream_type"]=> 95: string(5) "STDIO" 96: ["mode"]=> 97: string(2) "w+" 98: ["unread_bytes"]=> 99: int(0) 100: ["seekable"]=> 101: bool(true) 102: ["uri"]=> 103: string(%i) "%s.tmp" 104: ["timed_out"]=> 105: bool(false) 106: ["blocked"]=> 107: bool(true) 108: ["eof"]=> 109: bool(false) 110: } 111: array(9) { 112: ["wrapper_type"]=> 113: string(9) "plainfile" 114: ["stream_type"]=> 115: string(5) "STDIO" 116: ["mode"]=> 117: string(1) "a" 118: ["unread_bytes"]=> 119: int(0) 120: ["seekable"]=> 121: bool(true) 122: ["uri"]=> 123: string(%i) "%s.tmp" 124: ["timed_out"]=> 125: bool(false) 126: ["blocked"]=> 127: bool(true) 128: ["eof"]=> 129: bool(false) 130: } 131: array(9) { 132: ["wrapper_type"]=> 133: string(9) "plainfile" 134: ["stream_type"]=> 135: string(5) "STDIO" 136: ["mode"]=> 137: string(2) "a+" 138: ["unread_bytes"]=> 139: int(0) 140: ["seekable"]=> 141: bool(true) 142: ["uri"]=> 143: string(%i) "%s.tmp" 144: ["timed_out"]=> 145: bool(false) 146: ["blocked"]=> 147: bool(true) 148: ["eof"]=> 149: bool(false) 150: } 151: array(9) { 152: ["wrapper_type"]=> 153: string(9) "plainfile" 154: ["stream_type"]=> 155: string(5) "STDIO" 156: ["mode"]=> 157: string(1) "x" 158: ["unread_bytes"]=> 159: int(0) 160: ["seekable"]=> 161: bool(true) 162: ["uri"]=> 163: string(%i) "%s.tmp" 164: ["timed_out"]=> 165: bool(false) 166: ["blocked"]=> 167: bool(true) 168: ["eof"]=> 169: bool(false) 170: } 171: array(9) { 172: ["wrapper_type"]=> 173: string(9) "plainfile" 174: ["stream_type"]=> 175: string(5) "STDIO" 176: ["mode"]=> 177: string(2) "x+" 178: ["unread_bytes"]=> 179: int(0) 180: ["seekable"]=> 181: bool(true) 182: ["uri"]=> 183: string(%i) "%s.tmp" 184: ["timed_out"]=> 185: bool(false) 186: ["blocked"]=> 187: bool(true) 188: ["eof"]=> 189: bool(false) 190: } 191: array(9) { 192: ["wrapper_type"]=> 193: string(9) "plainfile" 194: ["stream_type"]=> 195: string(5) "STDIO" 196: ["mode"]=> 197: string(2) "rb" 198: ["unread_bytes"]=> 199: int(0) 200: ["seekable"]=> 201: bool(true) 202: ["uri"]=> 203: string(%i) "%s.tmp" 204: ["timed_out"]=> 205: bool(false) 206: ["blocked"]=> 207: bool(true) 208: ["eof"]=> 209: bool(false) 210: } 211: array(9) { 212: ["wrapper_type"]=> 213: string(9) "plainfile" 214: ["stream_type"]=> 215: string(5) "STDIO" 216: ["mode"]=> 217: string(3) "rb+" 218: ["unread_bytes"]=> 219: int(0) 220: ["seekable"]=> 221: bool(true) 222: ["uri"]=> 223: string(%i) "%s.tmp" 224: ["timed_out"]=> 225: bool(false) 226: ["blocked"]=> 227: bool(true) 228: ["eof"]=> 229: bool(false) 230: } 231: array(9) { 232: ["wrapper_type"]=> 233: string(9) "plainfile" 234: ["stream_type"]=> 235: string(5) "STDIO" 236: ["mode"]=> 237: string(2) "wb" 238: ["unread_bytes"]=> 239: int(0) 240: ["seekable"]=> 241: bool(true) 242: ["uri"]=> 243: string(%i) "%s.tmp" 244: ["timed_out"]=> 245: bool(false) 246: ["blocked"]=> 247: bool(true) 248: ["eof"]=> 249: bool(false) 250: } 251: array(9) { 252: ["wrapper_type"]=> 253: string(9) "plainfile" 254: ["stream_type"]=> 255: string(5) "STDIO" 256: ["mode"]=> 257: string(3) "wb+" 258: ["unread_bytes"]=> 259: int(0) 260: ["seekable"]=> 261: bool(true) 262: ["uri"]=> 263: string(%i) "%s.tmp" 264: ["timed_out"]=> 265: bool(false) 266: ["blocked"]=> 267: bool(true) 268: ["eof"]=> 269: bool(false) 270: } 271: array(9) { 272: ["wrapper_type"]=> 273: string(9) "plainfile" 274: ["stream_type"]=> 275: string(5) "STDIO" 276: ["mode"]=> 277: string(2) "ab" 278: ["unread_bytes"]=> 279: int(0) 280: ["seekable"]=> 281: bool(true) 282: ["uri"]=> 283: string(%i) "%s.tmp" 284: ["timed_out"]=> 285: bool(false) 286: ["blocked"]=> 287: bool(true) 288: ["eof"]=> 289: bool(false) 290: } 291: array(9) { 292: ["wrapper_type"]=> 293: string(9) "plainfile" 294: ["stream_type"]=> 295: string(5) "STDIO" 296: ["mode"]=> 297: string(3) "ab+" 298: ["unread_bytes"]=> 299: int(0) 300: ["seekable"]=> 301: bool(true) 302: ["uri"]=> 303: string(%i) "%s.tmp" 304: ["timed_out"]=> 305: bool(false) 306: ["blocked"]=> 307: bool(true) 308: ["eof"]=> 309: bool(false) 310: } 311: array(9) { 312: ["wrapper_type"]=> 313: string(9) "plainfile" 314: ["stream_type"]=> 315: string(5) "STDIO" 316: ["mode"]=> 317: string(2) "xb" 318: ["unread_bytes"]=> 319: int(0) 320: ["seekable"]=> 321: bool(true) 322: ["uri"]=> 323: string(%i) "%s.tmp" 324: ["timed_out"]=> 325: bool(false) 326: ["blocked"]=> 327: bool(true) 328: ["eof"]=> 329: bool(false) 330: } 331: array(9) { 332: ["wrapper_type"]=> 333: string(9) "plainfile" 334: ["stream_type"]=> 335: string(5) "STDIO" 336: ["mode"]=> 337: string(3) "xb+" 338: ["unread_bytes"]=> 339: int(0) 340: ["seekable"]=> 341: bool(true) 342: ["uri"]=> 343: string(%i) "%s.tmp" 344: ["timed_out"]=> 345: bool(false) 346: ["blocked"]=> 347: bool(true) 348: ["eof"]=> 349: bool(false) 350: } 351: array(9) { 352: ["wrapper_type"]=> 353: string(9) "plainfile" 354: ["stream_type"]=> 355: string(5) "STDIO" 356: ["mode"]=> 357: string(2) "rt" 358: ["unread_bytes"]=> 359: int(0) 360: ["seekable"]=> 361: bool(true) 362: ["uri"]=> 363: string(%i) "%s.tmp" 364: ["timed_out"]=> 365: bool(false) 366: ["blocked"]=> 367: bool(true) 368: ["eof"]=> 369: bool(false) 370: } 371: array(9) { 372: ["wrapper_type"]=> 373: string(9) "plainfile" 374: ["stream_type"]=> 375: string(5) "STDIO" 376: ["mode"]=> 377: string(3) "rt+" 378: ["unread_bytes"]=> 379: int(0) 380: ["seekable"]=> 381: bool(true) 382: ["uri"]=> 383: string(%i) "%s.tmp" 384: ["timed_out"]=> 385: bool(false) 386: ["blocked"]=> 387: bool(true) 388: ["eof"]=> 389: bool(false) 390: } 391: array(9) { 392: ["wrapper_type"]=> 393: string(9) "plainfile" 394: ["stream_type"]=> 395: string(5) "STDIO" 396: ["mode"]=> 397: string(2) "wt" 398: ["unread_bytes"]=> 399: int(0) 400: ["seekable"]=> 401: bool(true) 402: ["uri"]=> 403: string(%i) "%s.tmp" 404: ["timed_out"]=> 405: bool(false) 406: ["blocked"]=> 407: bool(true) 408: ["eof"]=> 409: bool(false) 410: } 411: array(9) { 412: ["wrapper_type"]=> 413: string(9) "plainfile" 414: ["stream_type"]=> 415: string(5) "STDIO" 416: ["mode"]=> 417: string(3) "wt+" 418: ["unread_bytes"]=> 419: int(0) 420: ["seekable"]=> 421: bool(true) 422: ["uri"]=> 423: string(%i) "%s.tmp" 424: ["timed_out"]=> 425: bool(false) 426: ["blocked"]=> 427: bool(true) 428: ["eof"]=> 429: bool(false) 430: } 431: array(9) { 432: ["wrapper_type"]=> 433: string(9) "plainfile" 434: ["stream_type"]=> 435: string(5) "STDIO" 436: ["mode"]=> 437: string(2) "at" 438: ["unread_bytes"]=> 439: int(0) 440: ["seekable"]=> 441: bool(true) 442: ["uri"]=> 443: string(%i) "%s.tmp" 444: ["timed_out"]=> 445: bool(false) 446: ["blocked"]=> 447: bool(true) 448: ["eof"]=> 449: bool(false) 450: } 451: array(9) { 452: ["wrapper_type"]=> 453: string(9) "plainfile" 454: ["stream_type"]=> 455: string(5) "STDIO" 456: ["mode"]=> 457: string(3) "at+" 458: ["unread_bytes"]=> 459: int(0) 460: ["seekable"]=> 461: bool(true) 462: ["uri"]=> 463: string(%i) "%s.tmp" 464: ["timed_out"]=> 465: bool(false) 466: ["blocked"]=> 467: bool(true) 468: ["eof"]=> 469: bool(false) 470: } 471: array(9) { 472: ["wrapper_type"]=> 473: string(9) "plainfile" 474: ["stream_type"]=> 475: string(5) "STDIO" 476: ["mode"]=> 477: string(2) "xt" 478: ["unread_bytes"]=> 479: int(0) 480: ["seekable"]=> 481: bool(true) 482: ["uri"]=> 483: string(%i) "%s.tmp" 484: ["timed_out"]=> 485: bool(false) 486: ["blocked"]=> 487: bool(true) 488: ["eof"]=> 489: bool(false) 490: } 491: array(9) { 492: ["wrapper_type"]=> 493: string(9) "plainfile" 494: ["stream_type"]=> 495: string(5) "STDIO" 496: ["mode"]=> 497: string(3) "xt+" 498: ["unread_bytes"]=> 499: int(0) 500: ["seekable"]=> 501: bool(true) 502: ["uri"]=> 503: string(%i) "%s.tmp" 504: ["timed_out"]=> 505: bool(false) 506: ["blocked"]=> 507: bool(true) 508: ["eof"]=> 509: bool(false) 510: }