PHP公式需要计算一个简单的格式

时间:2011-08-18 00:38:05

标签: php

我正在尝试取一笔金额并将其转换为单位类型格式......

例如:

(注意:不要担心美元符号)

总计400美元

我需要将其显示为4 * 100

另一个例子

总计450美元

我需要将其显示为4 * 100 | 50 * 1

所以另一个词只有100和1个单位。

我已经想了3个小时,似乎没有想到任何事情......也许有人在那里做了类似的事并且已经知道了答案?

4 个答案:

答案 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);

查看modulus (%) operator

答案 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";