blibio/combinatorics

Simple combination and permutation generators.

Maintainers

Package info

github.com/blibio/combinatorics

pkg:composer/blibio/combinatorics

Statistics

Installs: 2

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

v1.1.0 2025-09-08 08:50 UTC

This package is auto-updated.

Last update: 2026-04-08 10:10:02 UTC


README

Software License Coverage Status

Simple PHP 8.3+ generators to create:

Installation

Install via Composer:

composer require blibio/combinatorics

Usage

To use the generators, simply create the kind of object you need, and iterate. E.g.:

<?php

declare(strict_types=1);

use Blibio\Combinatorics\Combinatorics;

$elements = ['A', 'B', 'C', 'D'];
$k = 3;

// Using the boolean parameter:
$it = Combinatorics::combinations($elements, $k, withRepetition: false);

// or:
// $it = Combinatorics::combinations($elements, $k, withRepetition: true);
// $it = Combinatorics::permutations($elements, $k, withRepetition: false);
// $it = Combinatorics::permutations($elements, $k, withRepetition: true);

// Using the explicit method names:
// $it = Combinatorics::combinationsWithoutRepetition($elements, $k);
// $it = Combinatorics::combinationsWithRepetition($elements, $k);
// $it = Combinatorics::permutationsWithoutRepetition($elements, $k);
// $it = Combinatorics::permutationsWithRepetition($elements, $k);

foreach ($it as $set) {
    // use $set
}

Copyright and license

The blibio/combinatorics library is copyright © Stephan Six and licensed for use under the MIT License (MIT). Please see LICENSE for more information.