was.php – Diff between revs 10 and 11

Subversion Repositories:
Rev:
Only display areas with differencesIgnore whitespace
Rev 10 Rev 11
1 <?php 1 <?php
2   2  
3 ########################################################################### 3 ###########################################################################
4 ## Copyright (C) Wizardry and Steamworks 2015 - License: GNU GPLv3 ## 4 ## Copyright (C) Wizardry and Steamworks 2015 - License: GNU GPLv3 ##
5 ########################################################################### 5 ###########################################################################
6 function wasCSVToArray($csv) { 6 function wasCSVToArray($csv) {
7 $l = array(); 7 $l = array();
8 $s = array(); 8 $s = array();
9 $m = ""; 9 $m = "";
10 for ($i = 0; $i < strlen($csv); ++$i) { 10 for ($i = 0; $i < strlen($csv); ++$i) {
11 switch ($csv{$i}) { 11 switch ($csv[$i]) {
12 case ',': 12 case ',':
13 if (sizeof($s) == 0 || !current($s) == '"') { 13 if (sizeof($s) == 0 || !current($s) == '"') {
14 array_push($l, $m); 14 array_push($l, $m);
15 $m = ""; 15 $m = "";
16 break; 16 break;
17 } 17 }
18 $m .= $csv{$i}; 18 $m .= $csv[$i];
19 continue; 19 continue;
20 case '"': 20 case '"':
21 if ($i + 1 < strlen($csv) && $csv{$i} == $csv{$i + 1}) { 21 if ($i + 1 < strlen($csv) && $csv[$i] == $csv[$i + 1]) {
22 $m .= $csv{$i}; 22 $m .= $csv[$i];
23 ++$i; 23 ++$i;
24 break; 24 break;
25 } 25 }
26 if (sizeof($s) == 0|| !current($s) == $csv[$i]) { 26 if (sizeof($s) == 0|| !current($s) == $csv[$i]) {
27 array_push($s, $csv{$i}); 27 array_push($s, $csv[$i]);
28 continue; 28 continue;
29 } 29 }
30 array_pop($s); 30 array_pop($s);
31 break; 31 break;
32 default: 32 default:
33 $m .= $csv{$i}; 33 $m .= $csv[$i];
34 break; 34 break;
35 } 35 }
36 } 36 }
37 array_push($l, $m); 37 array_push($l, $m);
38 return $l; 38 return $l;
39 } 39 }
40   40  
41 ########################################################################### 41 ###########################################################################
42 ## Copyright (C) Wizardry and Steamworks 2015 - License: GNU GPLv3 ## 42 ## Copyright (C) Wizardry and Steamworks 2015 - License: GNU GPLv3 ##
43 ########################################################################### 43 ###########################################################################
44 function wasArrayToCSV($a) { 44 function wasArrayToCSV($a) {
45 return implode( 45 return implode(
46 ',', 46 ',',
47 array_map( 47 array_map(
48 function($o) { 48 function($o) {
49 $o = str_replace('"', '""', $o); 49 $o = str_replace('"', '""', $o);
50 switch( 50 switch(
51 (strpos($o, ' ') !== FALSE) || 51 (strpos($o, ' ') !== FALSE) ||
52 (strpos($o, '"') !== FALSE) || 52 (strpos($o, '"') !== FALSE) ||
53 (strpos($o, ',') !== FALSE) || 53 (strpos($o, ',') !== FALSE) ||
54 (strpos($o, '\r') !== FALSE) || 54 (strpos($o, '\r') !== FALSE) ||
55 (strpos($o, '\n') !== FALSE) 55 (strpos($o, '\n') !== FALSE)
56 ) 56 )
57 { 57 {
58 case TRUE: 58 case TRUE:
59 return '"' . $o . '"'; 59 return '"' . $o . '"';
60 default: 60 default:
61 return $o; 61 return $o;
62 } 62 }
63 }, 63 },
64 $a 64 $a
65 ) 65 )
66 ); 66 );
67 } 67 }
68   68  
69
Generated by GNU Enscript 1.6.5.90.
69
Generated by GNU Enscript 1.6.5.90.
70   70  
71   71  
72   72