的價值我有分數的數組:PHP - 實際執行變量
$fractions = array('1/8', '1/4', '1/2');
有什麼辦法,我可以讓PHP實際執行部門得到一個十進制值?
喜歡的東西:
foreach($fractions as $value) {
$decimal = [the result of 1 divided by 8, or whatever the current fraction is in value];
}
的價值我有分數的數組:PHP - 實際執行變量
$fractions = array('1/8', '1/4', '1/2');
有什麼辦法,我可以讓PHP實際執行部門得到一個十進制值?
喜歡的東西:
foreach($fractions as $value) {
$decimal = [the result of 1 divided by 8, or whatever the current fraction is in value];
}
你有它的樣子,你應該只是爆炸並做你的事業部:
foreach($fractions as $value) {
$exp = explode('/',$value);
$decimal = $exp[0]/$exp[1];
}
你可以也eval(),但我通常不會那樣做。這也是一個表現。
您可以撥打eval()
:
$fractions = array('1/8', '1/4', '1/2');
foreach($fractions as $value) {
$decimal = eval("return $value;");
echo "$value = $decimal\n";
}
爲此,行必須讀取'$ decimal = eval(「return $ value;」);'或者eval將會失敗,並出現'Parse error:syntax error,unexpected $ end'。我真的不喜歡使用'eval' – runfalk 2011-05-18 23:29:34
感謝您指出了這一點,糾正了我的例子。 – 2011-05-19 00:56:07
感謝您的額外建議AJ。我會考慮將來可能的使用情況。 – 2011-05-19 13:49:22
你可以更好地構建你的數組,但是如果你不會像AJ所說的那樣使用'eval()' – 2011-05-18 22:14:40
這個數組只是爲了幫助解釋這個問題。 – 2011-05-19 13:48:25