Return to fscanf_variation43.phpt CVS log | Up to [ELWIX - Embedded LightWeight unIX -] / embedaddon / php / ext / standard / tests / file |
1.1 misho 1: --TEST-- 2: Test fscanf() function: usage variations - unsigned formats with strings 3: --FILE-- 4: <?php 5: 6: /* 7: Prototype: mixed fscanf ( resource $handle, string $format [, mixed &$...] ); 8: Description: Parses input from a file according to a format 9: */ 10: 11: /* Test fscanf() to scan strings using different unsigned format types */ 12: 13: $file_path = dirname(__FILE__); 14: 15: echo "*** Test fscanf(): different unsigned format types with strings ***\n"; 16: 17: // create a file 18: $filename = "$file_path/fscanf_variation43.tmp"; 19: $file_handle = fopen($filename, "w"); 20: if($file_handle == false) 21: exit("Error:failed to open file $filename"); 22: 23: // array of strings 24: $strings = array ( 25: "", 26: '', 27: "0", 28: '0', 29: "1", 30: '1', 31: "\x01", 32: '\x01', 33: "\01", 34: '\01', 35: 'string', 36: "string", 37: "true", 38: "FALSE", 39: 'false', 40: 'TRUE', 41: "NULL", 42: 'null' 43: ); 44: 45: $unsigned_formats = array( "%u", "%hu", "%lu", "%Lu", " %u", "%u ", "% u", "\t%u", "\n%u", "%4u", "%30u", "%[0-9]", "%*u"); 46: 47: $counter = 1; 48: 49: // writing to the file 50: foreach($strings as $string) { 51: @fprintf($file_handle, $string); 52: @fprintf($file_handle, "\n"); 53: } 54: // closing the file 55: fclose($file_handle); 56: 57: // opening the file for reading 58: $file_handle = fopen($filename, "r"); 59: if($file_handle == false) { 60: exit("Error:failed to open file $filename"); 61: } 62: 63: $counter = 1; 64: // reading the values from file using different unsigned formats 65: foreach($unsigned_formats as $unsigned_format) { 66: // rewind the file so that for every foreach iteration the file pointer starts from bof 67: rewind($file_handle); 68: echo "\n-- iteration $counter --\n"; 69: while( !feof($file_handle) ) { 70: var_dump( fscanf($file_handle,$unsigned_format) ); 71: } 72: $counter++; 73: } 74: 75: echo "\n*** Done ***"; 76: ?> 77: --CLEAN-- 78: <?php 79: $file_path = dirname(__FILE__); 80: $filename = "$file_path/fscanf_variation43.tmp"; 81: unlink($filename); 82: ?> 83: --EXPECTF-- 84: *** Test fscanf(): different unsigned format types with strings *** 85: 86: -- iteration 1 -- 87: NULL 88: NULL 89: array(1) { 90: [0]=> 91: int(0) 92: } 93: array(1) { 94: [0]=> 95: int(0) 96: } 97: array(1) { 98: [0]=> 99: int(1) 100: } 101: array(1) { 102: [0]=> 103: int(1) 104: } 105: array(1) { 106: [0]=> 107: NULL 108: } 109: array(1) { 110: [0]=> 111: NULL 112: } 113: array(1) { 114: [0]=> 115: NULL 116: } 117: array(1) { 118: [0]=> 119: NULL 120: } 121: array(1) { 122: [0]=> 123: NULL 124: } 125: array(1) { 126: [0]=> 127: NULL 128: } 129: array(1) { 130: [0]=> 131: NULL 132: } 133: array(1) { 134: [0]=> 135: NULL 136: } 137: array(1) { 138: [0]=> 139: NULL 140: } 141: array(1) { 142: [0]=> 143: NULL 144: } 145: array(1) { 146: [0]=> 147: NULL 148: } 149: array(1) { 150: [0]=> 151: NULL 152: } 153: bool(false) 154: 155: -- iteration 2 -- 156: NULL 157: NULL 158: array(1) { 159: [0]=> 160: int(0) 161: } 162: array(1) { 163: [0]=> 164: int(0) 165: } 166: array(1) { 167: [0]=> 168: int(1) 169: } 170: array(1) { 171: [0]=> 172: int(1) 173: } 174: array(1) { 175: [0]=> 176: NULL 177: } 178: array(1) { 179: [0]=> 180: NULL 181: } 182: array(1) { 183: [0]=> 184: NULL 185: } 186: array(1) { 187: [0]=> 188: NULL 189: } 190: array(1) { 191: [0]=> 192: NULL 193: } 194: array(1) { 195: [0]=> 196: NULL 197: } 198: array(1) { 199: [0]=> 200: NULL 201: } 202: array(1) { 203: [0]=> 204: NULL 205: } 206: array(1) { 207: [0]=> 208: NULL 209: } 210: array(1) { 211: [0]=> 212: NULL 213: } 214: array(1) { 215: [0]=> 216: NULL 217: } 218: array(1) { 219: [0]=> 220: NULL 221: } 222: bool(false) 223: 224: -- iteration 3 -- 225: NULL 226: NULL 227: array(1) { 228: [0]=> 229: int(0) 230: } 231: array(1) { 232: [0]=> 233: int(0) 234: } 235: array(1) { 236: [0]=> 237: int(1) 238: } 239: array(1) { 240: [0]=> 241: int(1) 242: } 243: array(1) { 244: [0]=> 245: NULL 246: } 247: array(1) { 248: [0]=> 249: NULL 250: } 251: array(1) { 252: [0]=> 253: NULL 254: } 255: array(1) { 256: [0]=> 257: NULL 258: } 259: array(1) { 260: [0]=> 261: NULL 262: } 263: array(1) { 264: [0]=> 265: NULL 266: } 267: array(1) { 268: [0]=> 269: NULL 270: } 271: array(1) { 272: [0]=> 273: NULL 274: } 275: array(1) { 276: [0]=> 277: NULL 278: } 279: array(1) { 280: [0]=> 281: NULL 282: } 283: array(1) { 284: [0]=> 285: NULL 286: } 287: array(1) { 288: [0]=> 289: NULL 290: } 291: bool(false) 292: 293: -- iteration 4 -- 294: NULL 295: NULL 296: array(1) { 297: [0]=> 298: int(0) 299: } 300: array(1) { 301: [0]=> 302: int(0) 303: } 304: array(1) { 305: [0]=> 306: int(1) 307: } 308: array(1) { 309: [0]=> 310: int(1) 311: } 312: array(1) { 313: [0]=> 314: NULL 315: } 316: array(1) { 317: [0]=> 318: NULL 319: } 320: array(1) { 321: [0]=> 322: NULL 323: } 324: array(1) { 325: [0]=> 326: NULL 327: } 328: array(1) { 329: [0]=> 330: NULL 331: } 332: array(1) { 333: [0]=> 334: NULL 335: } 336: array(1) { 337: [0]=> 338: NULL 339: } 340: array(1) { 341: [0]=> 342: NULL 343: } 344: array(1) { 345: [0]=> 346: NULL 347: } 348: array(1) { 349: [0]=> 350: NULL 351: } 352: array(1) { 353: [0]=> 354: NULL 355: } 356: array(1) { 357: [0]=> 358: NULL 359: } 360: bool(false) 361: 362: -- iteration 5 -- 363: NULL 364: NULL 365: array(1) { 366: [0]=> 367: int(0) 368: } 369: array(1) { 370: [0]=> 371: int(0) 372: } 373: array(1) { 374: [0]=> 375: int(1) 376: } 377: array(1) { 378: [0]=> 379: int(1) 380: } 381: array(1) { 382: [0]=> 383: NULL 384: } 385: array(1) { 386: [0]=> 387: NULL 388: } 389: array(1) { 390: [0]=> 391: NULL 392: } 393: array(1) { 394: [0]=> 395: NULL 396: } 397: array(1) { 398: [0]=> 399: NULL 400: } 401: array(1) { 402: [0]=> 403: NULL 404: } 405: array(1) { 406: [0]=> 407: NULL 408: } 409: array(1) { 410: [0]=> 411: NULL 412: } 413: array(1) { 414: [0]=> 415: NULL 416: } 417: array(1) { 418: [0]=> 419: NULL 420: } 421: array(1) { 422: [0]=> 423: NULL 424: } 425: array(1) { 426: [0]=> 427: NULL 428: } 429: bool(false) 430: 431: -- iteration 6 -- 432: NULL 433: NULL 434: array(1) { 435: [0]=> 436: int(0) 437: } 438: array(1) { 439: [0]=> 440: int(0) 441: } 442: array(1) { 443: [0]=> 444: int(1) 445: } 446: array(1) { 447: [0]=> 448: int(1) 449: } 450: array(1) { 451: [0]=> 452: NULL 453: } 454: array(1) { 455: [0]=> 456: NULL 457: } 458: array(1) { 459: [0]=> 460: NULL 461: } 462: array(1) { 463: [0]=> 464: NULL 465: } 466: array(1) { 467: [0]=> 468: NULL 469: } 470: array(1) { 471: [0]=> 472: NULL 473: } 474: array(1) { 475: [0]=> 476: NULL 477: } 478: array(1) { 479: [0]=> 480: NULL 481: } 482: array(1) { 483: [0]=> 484: NULL 485: } 486: array(1) { 487: [0]=> 488: NULL 489: } 490: array(1) { 491: [0]=> 492: NULL 493: } 494: array(1) { 495: [0]=> 496: NULL 497: } 498: bool(false) 499: 500: -- iteration 7 -- 501: 502: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 503: NULL 504: 505: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 506: NULL 507: 508: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 509: NULL 510: 511: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 512: NULL 513: 514: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 515: NULL 516: 517: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 518: NULL 519: 520: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 521: NULL 522: 523: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 524: NULL 525: 526: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 527: NULL 528: 529: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 530: NULL 531: 532: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 533: NULL 534: 535: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 536: NULL 537: 538: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 539: NULL 540: 541: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 542: NULL 543: 544: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 545: NULL 546: 547: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 548: NULL 549: 550: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 551: NULL 552: 553: Warning: fscanf(): Bad scan conversion character " " in %s on line %d 554: NULL 555: bool(false) 556: 557: -- iteration 8 -- 558: NULL 559: NULL 560: array(1) { 561: [0]=> 562: int(0) 563: } 564: array(1) { 565: [0]=> 566: int(0) 567: } 568: array(1) { 569: [0]=> 570: int(1) 571: } 572: array(1) { 573: [0]=> 574: int(1) 575: } 576: array(1) { 577: [0]=> 578: NULL 579: } 580: array(1) { 581: [0]=> 582: NULL 583: } 584: array(1) { 585: [0]=> 586: NULL 587: } 588: array(1) { 589: [0]=> 590: NULL 591: } 592: array(1) { 593: [0]=> 594: NULL 595: } 596: array(1) { 597: [0]=> 598: NULL 599: } 600: array(1) { 601: [0]=> 602: NULL 603: } 604: array(1) { 605: [0]=> 606: NULL 607: } 608: array(1) { 609: [0]=> 610: NULL 611: } 612: array(1) { 613: [0]=> 614: NULL 615: } 616: array(1) { 617: [0]=> 618: NULL 619: } 620: array(1) { 621: [0]=> 622: NULL 623: } 624: bool(false) 625: 626: -- iteration 9 -- 627: NULL 628: NULL 629: array(1) { 630: [0]=> 631: int(0) 632: } 633: array(1) { 634: [0]=> 635: int(0) 636: } 637: array(1) { 638: [0]=> 639: int(1) 640: } 641: array(1) { 642: [0]=> 643: int(1) 644: } 645: array(1) { 646: [0]=> 647: NULL 648: } 649: array(1) { 650: [0]=> 651: NULL 652: } 653: array(1) { 654: [0]=> 655: NULL 656: } 657: array(1) { 658: [0]=> 659: NULL 660: } 661: array(1) { 662: [0]=> 663: NULL 664: } 665: array(1) { 666: [0]=> 667: NULL 668: } 669: array(1) { 670: [0]=> 671: NULL 672: } 673: array(1) { 674: [0]=> 675: NULL 676: } 677: array(1) { 678: [0]=> 679: NULL 680: } 681: array(1) { 682: [0]=> 683: NULL 684: } 685: array(1) { 686: [0]=> 687: NULL 688: } 689: array(1) { 690: [0]=> 691: NULL 692: } 693: bool(false) 694: 695: -- iteration 10 -- 696: NULL 697: NULL 698: array(1) { 699: [0]=> 700: int(0) 701: } 702: array(1) { 703: [0]=> 704: int(0) 705: } 706: array(1) { 707: [0]=> 708: int(1) 709: } 710: array(1) { 711: [0]=> 712: int(1) 713: } 714: array(1) { 715: [0]=> 716: NULL 717: } 718: array(1) { 719: [0]=> 720: NULL 721: } 722: array(1) { 723: [0]=> 724: NULL 725: } 726: array(1) { 727: [0]=> 728: NULL 729: } 730: array(1) { 731: [0]=> 732: NULL 733: } 734: array(1) { 735: [0]=> 736: NULL 737: } 738: array(1) { 739: [0]=> 740: NULL 741: } 742: array(1) { 743: [0]=> 744: NULL 745: } 746: array(1) { 747: [0]=> 748: NULL 749: } 750: array(1) { 751: [0]=> 752: NULL 753: } 754: array(1) { 755: [0]=> 756: NULL 757: } 758: array(1) { 759: [0]=> 760: NULL 761: } 762: bool(false) 763: 764: -- iteration 11 -- 765: NULL 766: NULL 767: array(1) { 768: [0]=> 769: int(0) 770: } 771: array(1) { 772: [0]=> 773: int(0) 774: } 775: array(1) { 776: [0]=> 777: int(1) 778: } 779: array(1) { 780: [0]=> 781: int(1) 782: } 783: array(1) { 784: [0]=> 785: NULL 786: } 787: array(1) { 788: [0]=> 789: NULL 790: } 791: array(1) { 792: [0]=> 793: NULL 794: } 795: array(1) { 796: [0]=> 797: NULL 798: } 799: array(1) { 800: [0]=> 801: NULL 802: } 803: array(1) { 804: [0]=> 805: NULL 806: } 807: array(1) { 808: [0]=> 809: NULL 810: } 811: array(1) { 812: [0]=> 813: NULL 814: } 815: array(1) { 816: [0]=> 817: NULL 818: } 819: array(1) { 820: [0]=> 821: NULL 822: } 823: array(1) { 824: [0]=> 825: NULL 826: } 827: array(1) { 828: [0]=> 829: NULL 830: } 831: bool(false) 832: 833: -- iteration 12 -- 834: array(1) { 835: [0]=> 836: NULL 837: } 838: array(1) { 839: [0]=> 840: NULL 841: } 842: array(1) { 843: [0]=> 844: string(1) "0" 845: } 846: array(1) { 847: [0]=> 848: string(1) "0" 849: } 850: array(1) { 851: [0]=> 852: string(1) "1" 853: } 854: array(1) { 855: [0]=> 856: string(1) "1" 857: } 858: array(1) { 859: [0]=> 860: NULL 861: } 862: array(1) { 863: [0]=> 864: NULL 865: } 866: array(1) { 867: [0]=> 868: NULL 869: } 870: array(1) { 871: [0]=> 872: NULL 873: } 874: array(1) { 875: [0]=> 876: NULL 877: } 878: array(1) { 879: [0]=> 880: NULL 881: } 882: array(1) { 883: [0]=> 884: NULL 885: } 886: array(1) { 887: [0]=> 888: NULL 889: } 890: array(1) { 891: [0]=> 892: NULL 893: } 894: array(1) { 895: [0]=> 896: NULL 897: } 898: array(1) { 899: [0]=> 900: NULL 901: } 902: array(1) { 903: [0]=> 904: NULL 905: } 906: bool(false) 907: 908: -- iteration 13 -- 909: NULL 910: NULL 911: array(0) { 912: } 913: array(0) { 914: } 915: array(0) { 916: } 917: array(0) { 918: } 919: array(0) { 920: } 921: array(0) { 922: } 923: array(0) { 924: } 925: array(0) { 926: } 927: array(0) { 928: } 929: array(0) { 930: } 931: array(0) { 932: } 933: array(0) { 934: } 935: array(0) { 936: } 937: array(0) { 938: } 939: array(0) { 940: } 941: array(0) { 942: } 943: bool(false) 944: 945: *** Done *** 946: