Annotation of embedaddon/php/ext/spl/tests/SplFileObject_fputcsv.phpt, revision 1.1.1.1
1.1 misho 1: --TEST--
2: SplFileObject::fputcsv(): functionality tests
3: --FILE--
4: <?php
5: $file = __DIR__ . '/SplFileObject_fputcsv.csv';
6: $fo = new SplFileObject($file, 'w');
7:
8: $list = array (
9: 0 => 'aaa,bbb',
10: 1 => 'aaa,"bbb"',
11: 2 => '"aaa","bbb"',
12: 3 => 'aaa,bbb',
13: 4 => '"aaa",bbb',
14: 5 => '"aaa", "bbb"',
15: 6 => ',',
16: 7 => 'aaa,',
17: 8 => ',"aaa"',
18: 9 => '"",""',
19: 10 => '"""""",',
20: 11 => '""""",aaa',
21: 12 => 'aaa,bbb ',
22: 13 => 'aaa,"bbb "',
23: 14 => 'aaa"aaa","bbb"bbb',
24: 15 => 'aaa"aaa""",bbb',
25: 16 => 'aaa,"\\"bbb,ccc',
26: 17 => 'aaa"\\"a","bbb"',
27: 18 => '"\\"","aaa"',
28: 19 => '"\\""",aaa',
29: );
30:
31: foreach ($list as $v) {
32: $fo->fputcsv(explode(',', $v));
33: }
34: unset($fo);
35:
36: $res = file($file);
37: foreach($res as &$val)
38: {
39: $val = substr($val, 0, -1);
40: }
41: echo '$list = ';var_export($res);echo ";\n";
42:
43: $fp = fopen($file, "r");
44: $res = array();
45: while($l=fgetcsv($fp))
46: {
47: $res[] = join(',',$l);
48: }
49: fclose($fp);
50:
51: echo '$list = ';var_export($res);echo ";\n";
52:
53: ?>
54: ===DONE===
55: <?php exit(0); ?>
56: --CLEAN--
57: <?php
58: $file = __DIR__ . '/SplFileObject_fputcsv.csv';
59: unlink($file);
60: ?>
61: --EXPECT--
62: $list = array (
63: 0 => 'aaa,bbb',
64: 1 => 'aaa,"""bbb"""',
65: 2 => '"""aaa""","""bbb"""',
66: 3 => 'aaa,bbb',
67: 4 => '"""aaa""",bbb',
68: 5 => '"""aaa"""," ""bbb"""',
69: 6 => ',',
70: 7 => 'aaa,',
71: 8 => ',"""aaa"""',
72: 9 => '"""""",""""""',
73: 10 => '"""""""""""""",',
74: 11 => '"""""""""""",aaa',
75: 12 => 'aaa,"bbb "',
76: 13 => 'aaa,"""bbb """',
77: 14 => '"aaa""aaa""","""bbb""bbb"',
78: 15 => '"aaa""aaa""""""",bbb',
79: 16 => 'aaa,"""\\"bbb",ccc',
80: 17 => '"aaa""\\"a""","""bbb"""',
81: 18 => '"""\\"""","""aaa"""',
82: 19 => '"""\\"""""",aaa',
83: );
84: $list = array (
85: 0 => 'aaa,bbb',
86: 1 => 'aaa,"bbb"',
87: 2 => '"aaa","bbb"',
88: 3 => 'aaa,bbb',
89: 4 => '"aaa",bbb',
90: 5 => '"aaa", "bbb"',
91: 6 => ',',
92: 7 => 'aaa,',
93: 8 => ',"aaa"',
94: 9 => '"",""',
95: 10 => '"""""",',
96: 11 => '""""",aaa',
97: 12 => 'aaa,bbb ',
98: 13 => 'aaa,"bbb "',
99: 14 => 'aaa"aaa","bbb"bbb',
100: 15 => 'aaa"aaa""",bbb',
101: 16 => 'aaa,"\\"bbb,ccc',
102: 17 => 'aaa"\\"a","bbb"',
103: 18 => '"\\"","aaa"',
104: 19 => '"\\""",aaa',
105: );
106: ===DONE===
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>