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

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

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