把你的代碼在這樣的功能:
function formatCurrency($symbol, $converter, $defaultCurrency, $newCurrency, $factor=1.0, $suffix="", $substrChars=0) {
if($substrChars>0) {
return $symbol . substr(($converter->convert($defaultCurrency, $newCurrency) * $factor), 0, $substrChars) . $suffix . " <b>" . $newCurrency. "</b>";
} else {
return $symbol . ($converter->convert($defaultCurrency, $newCurrency) * $factor) . $suffix . " <b>" . $newCurrency. "</b>";
}
}
如果你把它叫做沒有$substrChars
參數,它將忽略substr()
呼叫,否則將剝奪所有,但第一$substrChars
字符:
if($_GET['currency'] === "GBP"){
$newCurrency = $_GET['currency'];
$string = formatCurrency($symbol[1], $converter, $defaultCurrency, $newCurrency, 2.0, ".00", 0);
} elseif($_GET['currency'] === "USD"){
$newCurrency = $_GET['currency'];
$string = formatCurrency($symbol[2], $converter, $defaultCurrency, $newCurrency, 1.0, "", 4);
}
該解決方案是非常具有可讀性,因爲您可以立即看到在條件語句中的兩個分支之間的差異。
您可以創建一個等於代碼部分的變量,並在需要時將其與其他行進行連接。 – nomistic