如果有人对改进问题措辞有任何建议,我很乐意更新它。
基本上我是在增加标签的不透明度,所以最后一个标签是最暗/最不透明的
我有一个标签数组,我想将不透明度变量设置为每次迭代时高一点,
如果我有 10 个项目,我可以简单地做
foreach ($labels as $key => $label) {
$this->renderLabel($label, $opacity = $key + 1 / 10);
}
这会给我
First Label (0.1)
Second Label (0.2)
Third Label (0.3)
...
但是我可以有未知数量的标签,并且只知道它们需要逐渐变得更加不透明,因此最后一个标签总是1.0
,第一个标签是0.Something
基于评论和一些帮助。
可以将$key + 1
除以项目数。
<?php
$labels = ['One', 'Two', 'Three', 'Four'];
$count = count($labels);
foreach ($labels as $key => $label) {
printf("%s %fn", $label, ($key +1) / $count);
}
// Outputs
One 0.250000
Two 0.500000
Three 0.750000
Four 1.000000