как сделать цикл может зависеть от значений в массиве
Я новичок, у меня есть значения массива, как это :
$array = [0.25, 0.1667, 0.1667, 0.1667, 0.125, 0.125] ;
Я хочу сделать зависимость, как это на цикле:
$array = [
0 => 0.25,
1 => 0.25 + 0.1667,
2 => 0.25 + 0.1667 + 0.1667,
3 => 0.25 + 0.1667 + 0.1667 + 0.1667,
4 => 0.25 + 0.1667 + 0.1667 + 0.1667 + 0.125,
5 => 0.25 + 0.1667 + 0.1667 + 0.1667 + 0.125 + 0.125
];
тогда результатом цикла и массивов может быть :
$array = [0.25, 0.416667, 0.58333, 0.75, 0.875, 1];
пожалуйста, помогите мне, как сделать цикл (for, while и т. д... ) и изменить на массив, спасибо за помощь!
У вопроса есть решение - Посмотреть?

Пожалуйста, прочитайте, Как спросить . Мы ожидаем, что вы покажете здесь некоторые фактические первоначальные усилия-покажите что-то, что вы пробовали, и объясните, в чем именно заключалась проблема. Пожалуйста, не приходите сюда, чтобы получить абсолютные основы, объясненные вам ("как сделать цикл (for, while и т. д..."), вот для чего нужны учебники и книги для начинающих.
Источник

Также исправьте орфографию и грамматику в названии ("как сделать цикл может быть по значениям в массиве"); это не английский язык.
Источник
Ответы - как сделать цикл может зависеть от значений в массиве / how make loop can addiction by values in array

20.11.2019 04:21:17
$array = [0.25, 0.1667, 0.1667, 0.1667, 0.125, 0.125] ;
$output = [];
$temp = 0;
foreach($array as $key=>$val) {
$output[$key] = $val + $temp;
$temp = $output[$key];
}

спасибо Рамин-Резазаде. это работает.

20.11.2019 04:22:39
попробовать это :
$array = [0.25, 0.1667, 0.1667, 0.1667, 0.125, 0.125];
$temp = 0;
foreach ($array as $key => $val) {
$temp += $val;
$array[$key] = $temp;
}
print_r($array);

спасибо шрингирадж-деванган... ГБУ

20.11.2019 07:44:00
Одним из вариантов является использование array_reduce и добавление для каждой итерации текущего к последнему значению.
$array = [0.25, 0.1667, 0.1667, 0.1667, 0.125, 0.125] ;
$res = array_reduce($array, function($carry, $item) {
$carry[] = $item + end($carry);
return $carry;
}, []);
print_r($res);
Выход
Array
(
[0] => 0.25
[1] => 0.4167
[2] => 0.5834
[3] => 0.7501
[4] => 0.8751
[5] => 1.0001
)
Помочь в развитии проекта: