ConverterCurrency   A
last analyzed

Complexity

Total Complexity 7

Size/Duplication

Total Lines 199
Duplicated Lines 0 %

Importance

Changes 5
Bugs 0 Features 0
Metric Value
eloc 180
c 5
b 0
f 0
dl 0
loc 199
rs 10
wmc 7

1 Method

Rating   Name   Duplication   Size   Complexity  
B getCurrency() 0 16 7
1
<?php
2
3
namespace CConverter;
4
5
class ConverterCurrency
6
{
7
    /**
8
     * country code and currency code contains gold, silver and bitcoin currency
9
     *
10
     * @var array
11
     */
12
    protected static $countrys = array(
13
    'AED' => 'AE',
14
    'AFN' => 'AF',
15
    'ALL' => 'AL',
16
    'AMD' => 'AM',
17
    'ANG' => 'AN',
18
    'AOA' => 'AO',
19
    'ARS' => 'AR',
20
    'AUD' => 'AU',
21
    'AWG' => 'AW',
22
    'AZN' => 'AZ',
23
    'BAM' => 'BA',
24
    'BBD' => 'BB',
25
    'BDT' => 'BD',
26
    'BGN' => 'BG',
27
    'BHD' => 'BH',
28
    'BIF' => 'BI',
29
    'BMD' => 'BM',
30
    'BND' => 'BN',
31
    'BOB' => 'BO',
32
    'BRL' => 'BR',
33
    'BSD' => 'BS',
34
    'BTC' => 'BTC',
35
    'BTN' => 'BT',
36
    'BWP' => 'BW',
37
    'BYN' => 'BY',
38
    'BYR' => 'BY',
39
    'BZD' => 'BZ',
40
    'CAD' => 'CA',
41
    'CDF' => 'CD',
42
    'CHF' => 'LI',
43
    'CLF' => 'CL',
44
    'CLP' => 'CL',
45
    'CNY' => 'CN',
46
    'COP' => 'CO',
47
    'CRC' => 'CR',
48
    'CUC' => 'CU',
49
    'CUP' => 'CU',
50
    'CVE' => 'CV',
51
    'CZK' => 'CZ',
52
    'DJF' => 'DJ',
53
    'DKK' => 'DK',
54
    'DOP' => 'DO',
55
    'DZD' => 'DZ',
56
    'EGP' => 'EG',
57
    'ERN' => 'ER',
58
    'ETB' => 'ET',
59
    'EUR' => 'AD',
60
    'FJD' => 'FJ',
61
    'FKP' => 'FK',
62
    'GBP' => 'IO',
63
    'GEL' => 'GE',
64
    'GGP' => 'GG',
65
    'GHS' => 'GH',
66
    'GIP' => 'GI',
67
    'GMD' => 'GM',
68
    'GNF' => 'GN',
69
    'GTQ' => 'GT',
70
    'GYD' => 'GY',
71
    'HKD' => 'HK',
72
    'HNL' => 'HN',
73
    'HRK' => 'HR',
74
    'HTG' => 'HT',
75
    'HUF' => 'HU',
76
    'IDR' => 'ID',
77
    'ILS' => 'IL',
78
    'IMP' => 'IM',
79
    'INR' => 'IN',
80
    'IQD' => 'IQ',
81
    'IRR' => 'IR',
82
    'ISK' => 'IS',
83
    'JEP' => 'JE',
84
    'JMD' => 'JM',
85
    'JOD' => 'JO',
86
    'JPY' => 'JP',
87
    'KES' => 'KE',
88
    'KGS' => 'KG',
89
    'KHR' => 'KH',
90
    'KMF' => 'KM',
91
    'KPW' => 'KP',
92
    'KRW' => 'KR',
93
    'KWD' => 'KW',
94
    'KYD' => 'KY',
95
    'KZT' => 'KZ',
96
    'LAK' => 'LA',
97
    'LBP' => 'LB',
98
    'LKR' => 'LK',
99
    'LRD' => 'LR',
100
    'LSL' => 'LS',
101
    'LTL' => 'LT',
102
    'LVL' => 'LV',
103
    'LYD' => 'LY',
104
    'MAD' => 'MA',
105
    'MDL' => 'MD',
106
    'MGA' => 'MG',
107
    'MKD' => 'MK',
108
    'MMK' => 'MM',
109
    'MNT' => 'MN',
110
    'MOP' => 'MO',
111
    'MRO' => 'MR',
112
    'MUR' => 'MU',
113
    'MVR' => 'MV',
114
    'MWK' => 'MW',
115
    'MXN' => 'MX',
116
    'MYR' => 'MY',
117
    'MZN' => 'MZ',
118
    'NAD' => 'NA',
119
    'NGN' => 'NG',
120
    'NIO' => 'NI',
121
    'NOK' => 'AQ',
122
    'NPR' => 'NP',
123
    'NZD' => 'CK',
124
    'OMR' => 'OM',
125
    'PAB' => 'PA',
126
    'PEN' => 'PE',
127
    'PGK' => 'PG',
128
    'PHP' => 'PH',
129
    'PKR' => 'PK',
130
    'PLN' => 'PL',
131
    'PYG' => 'PY',
132
    'QAR' => 'QA',
133
    'RON' => 'RO',
134
    'RSD' => 'RS',
135
    'RUB' => 'RU',
136
    'RWF' => 'RW',
137
    'SAR' => 'SA',
138
    'SBD' => 'SB',
139
    'SCR' => 'SC',
140
    'SDG' => 'SD',
141
    'SEK' => 'SE',
142
    'SGD' => 'SG',
143
    'SHP' => 'SH',
144
    'SLL' => 'SL',
145
    'SOS' => 'SO',
146
    'SRD' => 'SR',
147
    'STD' => 'ST',
148
    'SVC' => 'SV',
149
    'SYP' => 'SY',
150
    'SZL' => 'SZ',
151
    'THB' => 'TH',
152
    'TJS' => 'TJ',
153
    'TMT' => 'TM',
154
    'TND' => 'TN',
155
    'TOP' => 'TO',
156
    'TRY' => 'TR',
157
    'TTD' => 'TT',
158
    'TWD' => 'TW',
159
    'TZS' => 'TZ',
160
    'UAH' => 'UA',
161
    'UGX' => 'UG',
162
    'USD' => 'AS',
163
    'UYU' => 'UY',
164
    'UZS' => 'UZ',
165
    'VEF' => 'VE',
166
    'VND' => 'VN',
167
    'VUV' => 'VU',
168
    'WST' => 'WS',
169
    'XAF' => 'BJ',
170
    'XAG' => 'XAG',
171
    'XAU' => 'XAU',
172
    'XCD' => 'AI',
173
    'XDR' => 'TB',
174
    'XOF' => 'NE',
175
    'XPF' => 'PF',
176
    'YER' => 'YE',
177
    'ZAR' => 'ZA',
178
    'ZMK' => 'ZM',
179
    'ZMW' => 'ZM',
180
    'ZWL' => 'ZW');
181
182
    /**
183
     * check currency code and transform country code to currency code
184
     *
185
     * @param  string   $data
186
     * @return string|bool
187
     */
188
    public static function getCurrency($data)
189
    {
190
        $output = false;
191
        $base = array_flip(self::$countrys);
192
        if(strlen($data)==2){
193
            if(array_key_exists($data, $base)) {
194
                foreach($base as $key => $value){
195
                    if($key==$data) $output = $value;
196
                }
197
            }
198
        }else{
199
            foreach($base as $key => $value){
200
                if($value==$data) $output = $value;
201
            }
202
        }
203
        return $output;
204
    }
205
}
206