我想将任何整数四舍五入到下一个十位数。
一些例子来说明我的观点:
- 我的号码是1,我希望将其舍入到10
- 我的号码是35,我希望这个数字可以达到40
- 我的号码为72,我想将其四舍五入到80
- 等等
// $category_count's value is 38
for($i = 1; $i <= $category_count; $i++)
{
if($i % 10 == 0)
{
echo "<a href=\"?page=$i\">$i;</a>";
}
}
以上代码输出3个链接,我也需要第4个链接。
答案 0 :(得分:3)
您的for
无效。如果您需要将计数器模数为10,请改用此代码:
for($i = 1, $c = ceil($category_count/10); $i <= $c; $i++)
{
$j = $i * 10;
echo "<a href=\"?page=$j\">$j;</a>";
}
答案 1 :(得分:2)
编辑我的回答指出这个问题。与许多好的答案基本相同。
答案 2 :(得分:2)
mrtsherman几乎是正确的,但是OP的问题需要它向上舍入(1 => 10)
// $category_count's value is 38
$loop_limit = ceil($category_count/10);
for ($i = 1; $i <= $loop_limit; $i++) {
$page = $i * 10;
echo "<a href=\"?page={$page}\">{$page}</a>";
}
答案 3 :(得分:1)
round(($num/10))*10; // Make sure num is an integer or use (int) to convert string to integer.
这对我有用:)
答案 4 :(得分:0)
这样做的一种方法是添加9,然后在十位处截断它(整数除以十,然后乘以十)。
或者,您可以添加5然后使用具有负精度的round
函数:
echo round ($i + 5, -1);
答案 5 :(得分:0)
这样的事情应该有效:
(int(i/10) + 1) x 10
答案 6 :(得分:0)
尝试以下
ceil($category_count/10)*10