• Сложение чисел после запятой php. Как?

    0xD34F
    @0xD34F
    $num = 3.1415;
    
    $sum = array_sum(array_slice(str_split(explode('.', $num)[1]), 2, 2));

    если суммировать надо цифры, не являющиеся соседними, то

    $num = 3.1415;
    
    $idx = [ 1, 3, 5 ]; // индексы нужных цифр: 1 - это 4, 3 - это 5, 5 - этого уже нет, но ошибки не возникнет, будет использован 0
    
    $digits = str_split(explode('.', $num)[1]);
    $sum = array_reduce($idx, function($acc, $n) use($digits) {
      return $acc + (isset($digits[$n]) ? $digits[$n] : 0);
    }, 0);

    если есть вариант, что исходное число окажется целым, тогда в explode вместо $num передавайте $num.'.'.
    Ответ написан
    Комментировать