我正在尝试取一笔金额并将其转换为单位类型格式......
例如:
(注意:不要担心美元符号)
总计400美元
我需要将其显示为4 * 100
另一个例子
总计450美元
我需要将其显示为4 * 100 | 50 * 1
所以另一个词只有100和1个单位。
我已经想了3个小时,似乎没有想到任何事情......也许有人在那里做了类似的事并且已经知道了答案?
答案 0 :(得分:2)
希望我不做你的功课。试试这个:
$num = 450;
$ones = $num % 100;
$hundreds = floor($num / 100);
echo "$hundreds * 100 | $ones * 1";
答案 1 :(得分:0)
这是一个简单的实现
$amount = 450;
$hundreds = floor($amount / 100);
$ones = $amount % 100;
$string = array();
if( $hundreds )
$string[] = "$hundreds * 100";
if( $ones )
$string[] = "$ones * 1";
echo implode(' | ', $string);
答案 2 :(得分:0)
这是一个简单的解决方案,只显示存在的单位,如果你总是需要显示两个单位,你可以摆脱数组/连接的东西:
$total = 400;
$out = array();
$hundreds = floor($total / 100);
if ($hundreds) {
$out[] = $hundreds . ' * 100';
}
$ones = $total % 100;
if ($ones) {
$out[] = $ones . ' * 1';
}
echo join(' | ', $out);
答案 3 :(得分:0)
使用模数运算符来细分数字(这样的事情很好学习如何做,因为你需要它用于许多其他单位转换任务,如秒 - >分钟和秒转换):
$value=450;
$ones = $value % 100;
$hundreds = floor($value / 100);
echo "$hundreds * 100 | $ones * 1\n";