Tutte le combinazioni di un array in PHP

Array PHPMi è capitato di dover calcolare tutte le combinazioni possibili degli elementi presenti in un array.

Il codice per ottenere un array con tali combinazioni è:

function combina($array, $string_tmp, &$combinazioni) {
	if ($string_tmp != "")
		$combinazioni[]= $string_tmp;

	for ($i=0; $i<sizeof($array);$i++) {
 		$array_tmp = $array;
 		$items = array_splice($array_tmp, $i, 1);
 		if (sizeof($array_tmp) > 0) {
			combina($array_tmp, $string_tmp ." " . $items[0], $combinazioni);
		} else {
			$combinazioni []= $string_tmp. " " . $items[0];
		}
	}
}

$myarray = array('Uno', 'Due', 'Tre');
$combinazioni = array();
combina($myarray, "", $combinazioni);
print_r($combinazioni);

Lo script visualizzerà:

Array
(
    [0] =>  Uno
    [1] =>  Uno Due
    [2] =>  Uno Due Tre
    [3] =>  Uno Tre
    [4] =>  Uno Tre Due
    [5] =>  Due
    [6] =>  Due Uno
    [7] =>  Due Uno Tre
    [8] =>  Due Tre
    [9] =>  Due Tre Uno
    [10] =>  Tre
    [11] =>  Tre Uno
    [12] =>  Tre Uno Due
    [13] =>  Tre Due
    [14] =>  Tre Due Uno
)

Ti è piaciuto questo articolo? Condividilo... oppure lascia un commento 😉

Contenuto bloccato in attesa del consenso  
Contenuto bloccato in attesa del consenso  
Related Posts Plugin for WordPress, Blogger...
Taggato con:
Pubblicato in PHP

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*

Altro... PHP
convert accents
Convertire i caratteri accentati in entità html senza convertire i tag

Se vi capita di dover convertire i caratteri accentati in entità html (htmlentities), senza però voler convertire i tag potete utilizzare...

Chiudi