Code: Select all
<?php
// I need the combinations for this commented numbers
// 1, 7, 13, 19, 25, 31, 2, 8, 14, 20, 26, 32, 3, 9, 15,
// 21, 27, 33, 4, 10, 16, 22, 28, 34, 5, 11, 17, 23, 29,
// 35, 6, 12, 18, 24, 30, 36
$string=array(1,7,13,19,25,31,2,8,14,20,26,32,3,9,15,21,27,33,4,10,16,22,28,34);
$len=count($string);
$c=0;
ob_start();
for ($e = 0; $e < $len - 6; $e++)
{
for ($f = $e+1; $f < $len - 5; $f++)
{
for ($g = $f+1; $g < $len - 4; $g++)
{
for ($h = $g+1; $h < $len - 3; $h++)
{
for ($i = $h+1; $i < $len - 2; $i++)
{
for ($j = $i + 1; $j < $len - 1; $j++)
{
for ($k = $j + 1; $k < $len; $k++)
{
$c++;
$output[] = $string[$e] . "," .
$string[$f] . "," .
$string[$g] . "," .
$string[$h] . "," .
$string[$i] . "," .
$string[$j] . "," .
$string[$k];
ob_flush();
}
ob_flush();
}
ob_flush();
}
ob_flush();
}
ob_flush();
}
ob_flush();
}
ob_flush();
}
echo count($output);
?>The 36 numbers are not predefined. so it may vary depends upon the user selection. some might select 10 numbers like for example (1,10,14,32,12,18,20,5,12,8) and some might above 10. But maximum numbers are 36. So the combinations will be different each time and i am not going to store these combinations and I just want to generate combinations (not to print in a web page) . I am going to match the result(7 numbers) with these combinations and then i will take a count of matching combinations with the result 7 numbers and store in the database. I need same output in short execution period. Thanks in advance