想要将随机整数分成相等的五个部分。并将这些值插入到数组中。任何人都可以告诉我这个逻辑。
EG。我的号码是15。分手后。它应该生成如下的数组。
$myArray = array('3','6','9','12','15');
提前致谢。
答案 0 :(得分:3)
function getParts($number, $parts)
{
return array_map('round', array_slice(range(0, $number, $number / $parts), 1));
}
print_r(getParts(15, 5));
说明: range()
生成以0
开头的值数组,当它到达$number
并使用步骤$number/$parts
时结束。它将获得$parts+1
个浮点数。 array_slice()
删除第一个项目(始终为0
)。 array_map()
将函数round()
应用于每个元素以获取最接近的整数。
答案 1 :(得分:1)
划分并创建一个循环来填充数组......
$total = 15;
$divide = 5;
$base = $total / $divide;
$arr = array();
for($i = 1; $i <= $divide; $i++) {
$arr[] = round($i * $base);
}