corrade-http-templates – Diff between revs 6 and 68

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