Annotation of embedaddon/php/ext/standard/tests/file/fputcsv_variation8.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test fputcsv() : usage variations - with same delimiter and different enclosure 
                      3: --FILE--
                      4: <?php
                      5: /* 
                      6:  Prototype: array fputcsv ( resource $handle , array $fields [, string $delimiter [, string $enclosure]]] );
                      7:  Description: Format line as CSV and write to the file pointer 
                      8: */
                      9: 
                     10: /*
                     11:    Testing fputcsv() to write to a file when delimiter is same but enclosure is different from those
                     12:    present in the field to be written to the file
                     13:  */
                     14: 
                     15: echo "*** Testing fputcsv() : with same delimiter and different enclosure ***\n";
                     16: 
                     17: /* the array is with three elements in it. Each element should be read as 
                     18:    1st element is delimiter, 2nd element is enclosure 
                     19:    and 3rd element is csv fields
                     20: */
                     21: $csv_lists = array (
                     22:   array(',', '"', array('water,fruit') ),
                     23:   array(',', '"', array('"water","fruit') ),
                     24:   array(',', '"', array('"water","fruit"') ),
                     25:   array(' ', '^', array('^water^ ^fruit^')),
                     26:   array(':', '&', array('&water&:&fruit&')),
                     27:   array('=', '=', array('=water===fruit=')),
                     28:   array('-', '-', array('-water--fruit-air')),
                     29:   array('-', '-', array('-water---fruit---air-')),
                     30:   array(':', '&', array('&""""&:&"&:,:":&,&:,,,,'))
                     31: 
                     32: );
                     33: $file_path = dirname(__FILE__);
                     34: $filename = "$file_path/fputcsv_variation8.tmp";
                     35: 
                     36: $file_modes = array ("r+", "r+b", "r+t",
                     37:                      "a+", "a+b", "a+t",
                     38:                      "w+", "w+b", "w+t",
                     39:                      "x+", "x+b", "x+t"); 
                     40: 
                     41: $loop_counter = 1;
                     42: foreach ($csv_lists as $csv_list) {
                     43:   for($mode_counter = 0; $mode_counter < count($file_modes); $mode_counter++) {
                     44:     
                     45:     echo "\n-- file opened in $file_modes[$mode_counter] --\n";  
                     46:     // create the file and add the content with has csv fields
                     47:     if ( strstr($file_modes[$mode_counter], "r") ) {
                     48:       $file_handle = fopen($filename, "w");
                     49:     } else {
                     50:       $file_handle = fopen($filename, $file_modes[$mode_counter] );
                     51:     }
                     52:     if ( !$file_handle ) {
                     53:       echo "Error: failed to create file $filename!\n";
                     54:       exit();
                     55:     }
                     56:     $delimiter = $csv_list[0];
                     57:     $enclosure = $csv_list[1];
                     58:     $csv_field = $csv_list[2];
                     59:     
                     60:     // write to a file in csv format
                     61:     var_dump( fputcsv($file_handle, $csv_field, $delimiter, '+') );
                     62:     // check the file pointer position and eof
                     63:     var_dump( ftell($file_handle) );
                     64:     var_dump( feof($file_handle) );
                     65:     //close the file
                     66:     fclose($file_handle);
                     67:     
                     68:     // print the file contents 
                     69:     var_dump( file_get_contents($filename) );
                     70: 
                     71:     //delete file
                     72:     unlink($filename);
                     73:   } //end of mode loop 
                     74: } // end of foreach
                     75: 
                     76: echo "Done\n";
                     77: ?>
                     78: --EXPECTF--
                     79: *** Testing fputcsv() : with same delimiter and different enclosure ***
                     80: 
                     81: -- file opened in r+ --
                     82: int(14)
                     83: int(14)
                     84: bool(false)
                     85: string(14) "+water,fruit+
                     86: "
                     87: 
                     88: -- file opened in r+b --
                     89: int(14)
                     90: int(14)
                     91: bool(false)
                     92: string(14) "+water,fruit+
                     93: "
                     94: 
                     95: -- file opened in r+t --
                     96: int(14)
                     97: int(14)
                     98: bool(false)
                     99: string(%d) "+water,fruit+
                    100: "
                    101: 
                    102: -- file opened in a+ --
                    103: int(14)
                    104: int(14)
                    105: bool(false)
                    106: string(14) "+water,fruit+
                    107: "
                    108: 
                    109: -- file opened in a+b --
                    110: int(14)
                    111: int(14)
                    112: bool(false)
                    113: string(14) "+water,fruit+
                    114: "
                    115: 
                    116: -- file opened in a+t --
                    117: int(14)
                    118: int(14)
                    119: bool(false)
                    120: string(%d) "+water,fruit+
                    121: "
                    122: 
                    123: -- file opened in w+ --
                    124: int(14)
                    125: int(14)
                    126: bool(false)
                    127: string(14) "+water,fruit+
                    128: "
                    129: 
                    130: -- file opened in w+b --
                    131: int(14)
                    132: int(14)
                    133: bool(false)
                    134: string(14) "+water,fruit+
                    135: "
                    136: 
                    137: -- file opened in w+t --
                    138: int(14)
                    139: int(14)
                    140: bool(false)
                    141: string(%d) "+water,fruit+
                    142: "
                    143: 
                    144: -- file opened in x+ --
                    145: int(14)
                    146: int(14)
                    147: bool(false)
                    148: string(14) "+water,fruit+
                    149: "
                    150: 
                    151: -- file opened in x+b --
                    152: int(14)
                    153: int(14)
                    154: bool(false)
                    155: string(14) "+water,fruit+
                    156: "
                    157: 
                    158: -- file opened in x+t --
                    159: int(14)
                    160: int(14)
                    161: bool(false)
                    162: string(%d) "+water,fruit+
                    163: "
                    164: 
                    165: -- file opened in r+ --
                    166: int(17)
                    167: int(17)
                    168: bool(false)
                    169: string(17) "+"water","fruit+
                    170: "
                    171: 
                    172: -- file opened in r+b --
                    173: int(17)
                    174: int(17)
                    175: bool(false)
                    176: string(17) "+"water","fruit+
                    177: "
                    178: 
                    179: -- file opened in r+t --
                    180: int(17)
                    181: int(17)
                    182: bool(false)
                    183: string(%d) "+"water","fruit+
                    184: "
                    185: 
                    186: -- file opened in a+ --
                    187: int(17)
                    188: int(17)
                    189: bool(false)
                    190: string(17) "+"water","fruit+
                    191: "
                    192: 
                    193: -- file opened in a+b --
                    194: int(17)
                    195: int(17)
                    196: bool(false)
                    197: string(17) "+"water","fruit+
                    198: "
                    199: 
                    200: -- file opened in a+t --
                    201: int(17)
                    202: int(17)
                    203: bool(false)
                    204: string(%d) "+"water","fruit+
                    205: "
                    206: 
                    207: -- file opened in w+ --
                    208: int(17)
                    209: int(17)
                    210: bool(false)
                    211: string(17) "+"water","fruit+
                    212: "
                    213: 
                    214: -- file opened in w+b --
                    215: int(17)
                    216: int(17)
                    217: bool(false)
                    218: string(17) "+"water","fruit+
                    219: "
                    220: 
                    221: -- file opened in w+t --
                    222: int(17)
                    223: int(17)
                    224: bool(false)
                    225: string(%d) "+"water","fruit+
                    226: "
                    227: 
                    228: -- file opened in x+ --
                    229: int(17)
                    230: int(17)
                    231: bool(false)
                    232: string(17) "+"water","fruit+
                    233: "
                    234: 
                    235: -- file opened in x+b --
                    236: int(17)
                    237: int(17)
                    238: bool(false)
                    239: string(17) "+"water","fruit+
                    240: "
                    241: 
                    242: -- file opened in x+t --
                    243: int(17)
                    244: int(17)
                    245: bool(false)
                    246: string(%d) "+"water","fruit+
                    247: "
                    248: 
                    249: -- file opened in r+ --
                    250: int(18)
                    251: int(18)
                    252: bool(false)
                    253: string(18) "+"water","fruit"+
                    254: "
                    255: 
                    256: -- file opened in r+b --
                    257: int(18)
                    258: int(18)
                    259: bool(false)
                    260: string(18) "+"water","fruit"+
                    261: "
                    262: 
                    263: -- file opened in r+t --
                    264: int(18)
                    265: int(18)
                    266: bool(false)
                    267: string(%d) "+"water","fruit"+
                    268: "
                    269: 
                    270: -- file opened in a+ --
                    271: int(18)
                    272: int(18)
                    273: bool(false)
                    274: string(18) "+"water","fruit"+
                    275: "
                    276: 
                    277: -- file opened in a+b --
                    278: int(18)
                    279: int(18)
                    280: bool(false)
                    281: string(18) "+"water","fruit"+
                    282: "
                    283: 
                    284: -- file opened in a+t --
                    285: int(18)
                    286: int(18)
                    287: bool(false)
                    288: string(%d) "+"water","fruit"+
                    289: "
                    290: 
                    291: -- file opened in w+ --
                    292: int(18)
                    293: int(18)
                    294: bool(false)
                    295: string(18) "+"water","fruit"+
                    296: "
                    297: 
                    298: -- file opened in w+b --
                    299: int(18)
                    300: int(18)
                    301: bool(false)
                    302: string(18) "+"water","fruit"+
                    303: "
                    304: 
                    305: -- file opened in w+t --
                    306: int(18)
                    307: int(18)
                    308: bool(false)
                    309: string(%d) "+"water","fruit"+
                    310: "
                    311: 
                    312: -- file opened in x+ --
                    313: int(18)
                    314: int(18)
                    315: bool(false)
                    316: string(18) "+"water","fruit"+
                    317: "
                    318: 
                    319: -- file opened in x+b --
                    320: int(18)
                    321: int(18)
                    322: bool(false)
                    323: string(18) "+"water","fruit"+
                    324: "
                    325: 
                    326: -- file opened in x+t --
                    327: int(18)
                    328: int(18)
                    329: bool(false)
                    330: string(%d) "+"water","fruit"+
                    331: "
                    332: 
                    333: -- file opened in r+ --
                    334: int(18)
                    335: int(18)
                    336: bool(false)
                    337: string(18) "+^water^ ^fruit^+
                    338: "
                    339: 
                    340: -- file opened in r+b --
                    341: int(18)
                    342: int(18)
                    343: bool(false)
                    344: string(18) "+^water^ ^fruit^+
                    345: "
                    346: 
                    347: -- file opened in r+t --
                    348: int(18)
                    349: int(18)
                    350: bool(false)
                    351: string(%d) "+^water^ ^fruit^+
                    352: "
                    353: 
                    354: -- file opened in a+ --
                    355: int(18)
                    356: int(18)
                    357: bool(false)
                    358: string(18) "+^water^ ^fruit^+
                    359: "
                    360: 
                    361: -- file opened in a+b --
                    362: int(18)
                    363: int(18)
                    364: bool(false)
                    365: string(18) "+^water^ ^fruit^+
                    366: "
                    367: 
                    368: -- file opened in a+t --
                    369: int(18)
                    370: int(18)
                    371: bool(false)
                    372: string(%d) "+^water^ ^fruit^+
                    373: "
                    374: 
                    375: -- file opened in w+ --
                    376: int(18)
                    377: int(18)
                    378: bool(false)
                    379: string(18) "+^water^ ^fruit^+
                    380: "
                    381: 
                    382: -- file opened in w+b --
                    383: int(18)
                    384: int(18)
                    385: bool(false)
                    386: string(18) "+^water^ ^fruit^+
                    387: "
                    388: 
                    389: -- file opened in w+t --
                    390: int(18)
                    391: int(18)
                    392: bool(false)
                    393: string(%d) "+^water^ ^fruit^+
                    394: "
                    395: 
                    396: -- file opened in x+ --
                    397: int(18)
                    398: int(18)
                    399: bool(false)
                    400: string(18) "+^water^ ^fruit^+
                    401: "
                    402: 
                    403: -- file opened in x+b --
                    404: int(18)
                    405: int(18)
                    406: bool(false)
                    407: string(18) "+^water^ ^fruit^+
                    408: "
                    409: 
                    410: -- file opened in x+t --
                    411: int(18)
                    412: int(18)
                    413: bool(false)
                    414: string(%d) "+^water^ ^fruit^+
                    415: "
                    416: 
                    417: -- file opened in r+ --
                    418: int(18)
                    419: int(18)
                    420: bool(false)
                    421: string(18) "+&water&:&fruit&+
                    422: "
                    423: 
                    424: -- file opened in r+b --
                    425: int(18)
                    426: int(18)
                    427: bool(false)
                    428: string(18) "+&water&:&fruit&+
                    429: "
                    430: 
                    431: -- file opened in r+t --
                    432: int(18)
                    433: int(18)
                    434: bool(false)
                    435: string(%d) "+&water&:&fruit&+
                    436: "
                    437: 
                    438: -- file opened in a+ --
                    439: int(18)
                    440: int(18)
                    441: bool(false)
                    442: string(18) "+&water&:&fruit&+
                    443: "
                    444: 
                    445: -- file opened in a+b --
                    446: int(18)
                    447: int(18)
                    448: bool(false)
                    449: string(18) "+&water&:&fruit&+
                    450: "
                    451: 
                    452: -- file opened in a+t --
                    453: int(18)
                    454: int(18)
                    455: bool(false)
                    456: string(%d) "+&water&:&fruit&+
                    457: "
                    458: 
                    459: -- file opened in w+ --
                    460: int(18)
                    461: int(18)
                    462: bool(false)
                    463: string(18) "+&water&:&fruit&+
                    464: "
                    465: 
                    466: -- file opened in w+b --
                    467: int(18)
                    468: int(18)
                    469: bool(false)
                    470: string(18) "+&water&:&fruit&+
                    471: "
                    472: 
                    473: -- file opened in w+t --
                    474: int(18)
                    475: int(18)
                    476: bool(false)
                    477: string(%d) "+&water&:&fruit&+
                    478: "
                    479: 
                    480: -- file opened in x+ --
                    481: int(18)
                    482: int(18)
                    483: bool(false)
                    484: string(18) "+&water&:&fruit&+
                    485: "
                    486: 
                    487: -- file opened in x+b --
                    488: int(18)
                    489: int(18)
                    490: bool(false)
                    491: string(18) "+&water&:&fruit&+
                    492: "
                    493: 
                    494: -- file opened in x+t --
                    495: int(18)
                    496: int(18)
                    497: bool(false)
                    498: string(%d) "+&water&:&fruit&+
                    499: "
                    500: 
                    501: -- file opened in r+ --
                    502: int(18)
                    503: int(18)
                    504: bool(false)
                    505: string(18) "+=water===fruit=+
                    506: "
                    507: 
                    508: -- file opened in r+b --
                    509: int(18)
                    510: int(18)
                    511: bool(false)
                    512: string(18) "+=water===fruit=+
                    513: "
                    514: 
                    515: -- file opened in r+t --
                    516: int(18)
                    517: int(18)
                    518: bool(false)
                    519: string(%d) "+=water===fruit=+
                    520: "
                    521: 
                    522: -- file opened in a+ --
                    523: int(18)
                    524: int(18)
                    525: bool(false)
                    526: string(18) "+=water===fruit=+
                    527: "
                    528: 
                    529: -- file opened in a+b --
                    530: int(18)
                    531: int(18)
                    532: bool(false)
                    533: string(18) "+=water===fruit=+
                    534: "
                    535: 
                    536: -- file opened in a+t --
                    537: int(18)
                    538: int(18)
                    539: bool(false)
                    540: string(%d) "+=water===fruit=+
                    541: "
                    542: 
                    543: -- file opened in w+ --
                    544: int(18)
                    545: int(18)
                    546: bool(false)
                    547: string(18) "+=water===fruit=+
                    548: "
                    549: 
                    550: -- file opened in w+b --
                    551: int(18)
                    552: int(18)
                    553: bool(false)
                    554: string(18) "+=water===fruit=+
                    555: "
                    556: 
                    557: -- file opened in w+t --
                    558: int(18)
                    559: int(18)
                    560: bool(false)
                    561: string(%d) "+=water===fruit=+
                    562: "
                    563: 
                    564: -- file opened in x+ --
                    565: int(18)
                    566: int(18)
                    567: bool(false)
                    568: string(18) "+=water===fruit=+
                    569: "
                    570: 
                    571: -- file opened in x+b --
                    572: int(18)
                    573: int(18)
                    574: bool(false)
                    575: string(18) "+=water===fruit=+
                    576: "
                    577: 
                    578: -- file opened in x+t --
                    579: int(18)
                    580: int(18)
                    581: bool(false)
                    582: string(%d) "+=water===fruit=+
                    583: "
                    584: 
                    585: -- file opened in r+ --
                    586: int(20)
                    587: int(20)
                    588: bool(false)
                    589: string(20) "+-water--fruit-air+
                    590: "
                    591: 
                    592: -- file opened in r+b --
                    593: int(20)
                    594: int(20)
                    595: bool(false)
                    596: string(20) "+-water--fruit-air+
                    597: "
                    598: 
                    599: -- file opened in r+t --
                    600: int(20)
                    601: int(20)
                    602: bool(false)
                    603: string(%d) "+-water--fruit-air+
                    604: "
                    605: 
                    606: -- file opened in a+ --
                    607: int(20)
                    608: int(20)
                    609: bool(false)
                    610: string(20) "+-water--fruit-air+
                    611: "
                    612: 
                    613: -- file opened in a+b --
                    614: int(20)
                    615: int(20)
                    616: bool(false)
                    617: string(20) "+-water--fruit-air+
                    618: "
                    619: 
                    620: -- file opened in a+t --
                    621: int(20)
                    622: int(20)
                    623: bool(false)
                    624: string(%d) "+-water--fruit-air+
                    625: "
                    626: 
                    627: -- file opened in w+ --
                    628: int(20)
                    629: int(20)
                    630: bool(false)
                    631: string(20) "+-water--fruit-air+
                    632: "
                    633: 
                    634: -- file opened in w+b --
                    635: int(20)
                    636: int(20)
                    637: bool(false)
                    638: string(20) "+-water--fruit-air+
                    639: "
                    640: 
                    641: -- file opened in w+t --
                    642: int(20)
                    643: int(20)
                    644: bool(false)
                    645: string(%d) "+-water--fruit-air+
                    646: "
                    647: 
                    648: -- file opened in x+ --
                    649: int(20)
                    650: int(20)
                    651: bool(false)
                    652: string(20) "+-water--fruit-air+
                    653: "
                    654: 
                    655: -- file opened in x+b --
                    656: int(20)
                    657: int(20)
                    658: bool(false)
                    659: string(20) "+-water--fruit-air+
                    660: "
                    661: 
                    662: -- file opened in x+t --
                    663: int(20)
                    664: int(20)
                    665: bool(false)
                    666: string(%d) "+-water--fruit-air+
                    667: "
                    668: 
                    669: -- file opened in r+ --
                    670: int(24)
                    671: int(24)
                    672: bool(false)
                    673: string(24) "+-water---fruit---air-+
                    674: "
                    675: 
                    676: -- file opened in r+b --
                    677: int(24)
                    678: int(24)
                    679: bool(false)
                    680: string(24) "+-water---fruit---air-+
                    681: "
                    682: 
                    683: -- file opened in r+t --
                    684: int(24)
                    685: int(24)
                    686: bool(false)
                    687: string(%d) "+-water---fruit---air-+
                    688: "
                    689: 
                    690: -- file opened in a+ --
                    691: int(24)
                    692: int(24)
                    693: bool(false)
                    694: string(24) "+-water---fruit---air-+
                    695: "
                    696: 
                    697: -- file opened in a+b --
                    698: int(24)
                    699: int(24)
                    700: bool(false)
                    701: string(24) "+-water---fruit---air-+
                    702: "
                    703: 
                    704: -- file opened in a+t --
                    705: int(24)
                    706: int(24)
                    707: bool(false)
                    708: string(%d) "+-water---fruit---air-+
                    709: "
                    710: 
                    711: -- file opened in w+ --
                    712: int(24)
                    713: int(24)
                    714: bool(false)
                    715: string(24) "+-water---fruit---air-+
                    716: "
                    717: 
                    718: -- file opened in w+b --
                    719: int(24)
                    720: int(24)
                    721: bool(false)
                    722: string(24) "+-water---fruit---air-+
                    723: "
                    724: 
                    725: -- file opened in w+t --
                    726: int(24)
                    727: int(24)
                    728: bool(false)
                    729: string(%d) "+-water---fruit---air-+
                    730: "
                    731: 
                    732: -- file opened in x+ --
                    733: int(24)
                    734: int(24)
                    735: bool(false)
                    736: string(24) "+-water---fruit---air-+
                    737: "
                    738: 
                    739: -- file opened in x+b --
                    740: int(24)
                    741: int(24)
                    742: bool(false)
                    743: string(24) "+-water---fruit---air-+
                    744: "
                    745: 
                    746: -- file opened in x+t --
                    747: int(24)
                    748: int(24)
                    749: bool(false)
                    750: string(%d) "+-water---fruit---air-+
                    751: "
                    752: 
                    753: -- file opened in r+ --
                    754: int(26)
                    755: int(26)
                    756: bool(false)
                    757: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    758: "
                    759: 
                    760: -- file opened in r+b --
                    761: int(26)
                    762: int(26)
                    763: bool(false)
                    764: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    765: "
                    766: 
                    767: -- file opened in r+t --
                    768: int(26)
                    769: int(26)
                    770: bool(false)
                    771: string(%d) "+&""""&:&"&:,:":&,&:,,,,+
                    772: "
                    773: 
                    774: -- file opened in a+ --
                    775: int(26)
                    776: int(26)
                    777: bool(false)
                    778: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    779: "
                    780: 
                    781: -- file opened in a+b --
                    782: int(26)
                    783: int(26)
                    784: bool(false)
                    785: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    786: "
                    787: 
                    788: -- file opened in a+t --
                    789: int(26)
                    790: int(26)
                    791: bool(false)
                    792: string(%d) "+&""""&:&"&:,:":&,&:,,,,+
                    793: "
                    794: 
                    795: -- file opened in w+ --
                    796: int(26)
                    797: int(26)
                    798: bool(false)
                    799: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    800: "
                    801: 
                    802: -- file opened in w+b --
                    803: int(26)
                    804: int(26)
                    805: bool(false)
                    806: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    807: "
                    808: 
                    809: -- file opened in w+t --
                    810: int(26)
                    811: int(26)
                    812: bool(false)
                    813: string(%d) "+&""""&:&"&:,:":&,&:,,,,+
                    814: "
                    815: 
                    816: -- file opened in x+ --
                    817: int(26)
                    818: int(26)
                    819: bool(false)
                    820: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    821: "
                    822: 
                    823: -- file opened in x+b --
                    824: int(26)
                    825: int(26)
                    826: bool(false)
                    827: string(26) "+&""""&:&"&:,:":&,&:,,,,+
                    828: "
                    829: 
                    830: -- file opened in x+t --
                    831: int(26)
                    832: int(26)
                    833: bool(false)
                    834: string(%d) "+&""""&:&"&:,:":&,&:,,,,+
                    835: "
                    836: Done
                    837: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>