我可以选择不选择从50000到75000000的硬编码形式值,增量为100000。
<select name="<?php echo $search_parameter; ?>" id="<?php echo $search_parameter; ?>" class="form-control">
<option value=""><?php echo __( $search_labels[$i], 'tt' ); ?></option>
<?php for( $j = 50000; $j <= 75000000; $j += 50000 ) : ?>
<option value="<?php echo $j; ?>"><?php echo number_format( $j ); ?></option>
<?php endfor; ?>
</select>
这节省了很多时间。我想进一步定制它,但除了硬编码之外,我真的没有其他地方可以开始——这似乎是一种倒退?
我如何让PHP根据$j阈值的值自动执行不同的增量?这可能吗?还是我要求太多了?
- 50000-500000-50k增量
- 500001-1000000-100000增量
- 1000001-5000000-500000增量
- 5000001-10000000-100万增量
- 1000万+1000万增量
这是一种非常简单的方法,但应该适合您:
<?php
$inc = 50000;
for( $j = 50000; $j <= 75000000; $j += $inc) : ?>
<option value="<?php echo $j; ?>"><?php echo number_format( $j ); ?></option>
<?php
if ($j>10000000) {$inc=10000000;}
elseif ($j>5000000) {$inc=1000000;}
elseif //and so on...
endfor; ?>
请注意,我们是"从顶部"进行比较,因此只需要少量的比较/分配。
另一种可能性是在一个额外的数组中定义阈值和增量,并在每个循环中对其进行评估。
编辑:添加了两个缺失的;
s。