outcloud/php-array-avg-callable

Calculates average of elements of array given by callable function

1.0.0 2017-11-13 18:23 UTC

This package is not auto-updated.

Last update: 2024-05-26 02:45:38 UTC


README

Calculates average value from array of objects/numbets via callable function

Example usage:

Let's assume we have any object of any class with some numeric value inside. We have an array of that objects, and we have to calculate a average of those numeric values.

Let's this be our class

class Num{
    private $value;
    
    public function __construct(int $number){
        $this->value = $number;
    }
    public function getValue(){
        return $this->value;
    }
}

we have array of items of 'Num' class

$items = [
    new Num(1),
    new Num(2),
    new Num(3),
];

Let's use array_avg_callable to calculate avg of that numbers

array_avg_callable($items, function($item){
    return $item->getValue();
});

Result will of course be: 2

Return Values

Returns the avg of values as an integer or float; an exception will be thrown if array is empty

Installation

via Composer:

composer require outcloud/php-array-avg-callable

function will be registered in global namespace.