/** * Converts an amount from one currency to another * * @param float $amount * @param str $currencyFrom * @param str $currencyTo * @return boolean */ function convert($currencyFrom, $currencyTo = 'USD', $amount = '1', $refresh = false) { static $rates; if (!is_array($rates)) { $rates = array(); } if (empty($rates[$currencyFrom]) || !is_array($rates[$currencyFrom])) { $rates[$currencyFrom] = array(); } if (empty($rates[$currencyFrom][$currencyTo])) { // get the exchange rate, and let the getexchange rate method handle refreshing the cache $rates[$currencyFrom][$currencyTo] = DSCHelperCurrency::getExchangeRate($currencyFrom, $currencyTo, $refresh); } $exchange_rate = $rates[$currencyFrom][$currencyTo]; // convert the amount $return = $amount * $exchange_rate; return $return; }