PHP - 在两个静态数字之间创建一组数字范围

Posted

技术标签:

【中文标题】PHP - 在两个静态数字之间创建一组数字范围【英文标题】:PHP - Create group of number ranges between two static numbers 【发布时间】:2017-06-11 16:49:36 【问题描述】:

我想在 php 中创建一个简单的算法,该算法具有在范围之间自动生成数字组的范围。

让我对你说得更清楚。我有一个电子商店收藏页面的价格过滤器部分。我所做的是从产品数据库中获取最低和最高价格,然后我想创建这些数字的组


假设一个产品的最低价格是 50 美元,最高是 300 美元。 我想做的是这样的:

选择价格范围:

[此处的复选框] 50 - 100

[此处的复选框] 101 - 150

[此处的复选框] 151 - 200

[此处的复选框] 201 - 250

[此处的复选框] 251 +

所以最后自动抓取最小值和最大值并自动创建组。

我开始这样的事情,但我卡住了:

for ( $x = $minPrice; $x < $maxPrice; $x++ )  

    if ( $x % 50 == 0 ) 

        echo $x;

    


提前谢谢你!

【问题讨论】:

您可以通过增加50 来提高循环效率(即减少循环次数)。所以而不是$x++$x += 50 没有投入太多精力/测试,但看看:https://3v4l.org/PNnca。您可以更改函数以接收您想要的范围数,然后除以了解每个步骤中的差异 @FirstOne 谢谢你的朋友!这就是答案。像魅力一样工作!!! 【参考方案1】:

这是我能理解的你所期望的代码:

$range = "";
for($i = 0; $i <= 300; $i += 50) 
    $range = $i<250 ?  ($i.'-'.($i+50)) : "250+";
    echo '<input type="checkbox" value="'.$i.'">Range '.$range.'<br>'; 

【讨论】:

以上是关于PHP - 在两个静态数字之间创建一组数字范围的主要内容,如果未能解决你的问题,请参考以下文章

powershell 判断ip地址是不是有效

将数字间隔分成组

PHP:比较两组数字,没有欺骗

如何生成两个数字之间的数字范围?

数字统计(NOIP2010 普及组第一题)

如何生成两个字母数字值之间的数字范围?