我遇到了以下问题:我得到了像
这样的值2,50
1
2,99
现在我想将它们分成两部分:
2 and 50
1 and 00
2 and 99
$euro = explode('.', $item->price)[0];
if(array_key_exists(1, explode('.', $item->price))) {
$cent = explode('.', $item->price)[1];
}
else
{
$cent = "00";
}
我应该这样做的方式,我想; - )
还有另一个问题:现在我得到以下值:
2 and 5
1 and 00
2 and 99
但它应该是
2 and 50
1 and 00
2 and 99
答案 0 :(得分:1)
你可以做到这一点,这是一个很短暂的做法:
string a:1:{s:14:"exclude_stores";a:3:{i:0;s:7:"phoenix";i:1;s:8:"chandler";i:2;s:6:"tucson";}}
输出:
$x = '2.55';
$a = explode('.',$x);
$euro = $a[0];
$cent = count($a) >= 2 ? $a[1] : '00';
请记住,此时你的字符串中不能有两个点。
答案 1 :(得分:0)
试试这个:
<?php
$value = 2.50;
$big = ($value%10);
$small = ($value-$big)*100;
echo "Value: ".$value."\n";
echo "Big: ".$big."\n";
echo "Small: ".$small."\n";
答案 2 :(得分:0)
如果您有浮点数(或带点作为小数点分隔符的字符串)作为输入:
ICompilationUnit
如果您使用逗号作为分隔符获取字符串,请添加前缀:
$euro = (string)floor($input);
$cent = str_pad(($input - $euro) * 100, 2, "0", STR_PAD_LEFT);