corrade-http-templates – Diff between revs 12 and 66

Subversion Repositories:
Rev:
Show entire fileIgnore whitespace
Rev 12 Rev 66
Line 23... Line 23...
23 function wasCSVToArray($csv) { 23 function wasCSVToArray($csv) {
24 $l = array(); 24 $l = array();
25 $s = array(); 25 $s = array();
26 $m = ""; 26 $m = "";
27 for ($i = 0; $i < strlen($csv); ++$i) { 27 for ($i = 0; $i < strlen($csv); ++$i) {
28 switch ($csv{$i}) { 28 switch ($csv[$i]) {
29 case ',': 29 case ',':
30 if (sizeof($s) == 0 || !current($s) == '"') { 30 if (sizeof($s) == 0 || !current($s) == '"') {
31 array_push($l, $m); 31 array_push($l, $m);
32 $m = ""; 32 $m = "";
33 break; 33 break;
34 } 34 }
35 $m .= $csv{$i}; 35 $m .= $csv[$i];
36 continue; 36 continue;
37 case '"': 37 case '"':
38 if ($i + 1 < strlen($csv) && $csv{$i} == $csv{$i + 1}) { 38 if ($i + 1 < strlen($csv) && $csv[$i] == $csv[$i + 1]) {
39 $m .= $csv{$i}; 39 $m .= $csv[$i];
40 ++$i; 40 ++$i;
41 break; 41 break;
42 } 42 }
43 if (sizeof($s) == 0|| !current($s) == $csv[$i]) { 43 if (sizeof($s) == 0|| !current($s) == $csv[$i]) {
44 array_push($s, $csv{$i}); 44 array_push($s, $csv[$i]);
45 continue; 45 continue;
46 } 46 }
47 array_pop($s); 47 array_pop($s);
48 break; 48 break;
49 default: 49 default:
50 $m .= $csv{$i}; 50 $m .= $csv[$i];
51 break; 51 break;
52 } 52 }
53 } 53 }
54 array_push($l, $m); 54 array_push($l, $m);
55 return $l; 55 return $l;