<?php
$array1 = array('A', 'B');
$array2 = array('1', '2', '3');
$num = count($array2);
//The total number of possible combinations
$total = pow(2, $num);
$temp = array();
//Loop through each possible combination
for ($i = 0; $i < $total; $i++)
{
//For each combination check if each bit is set
for ($j = 0; $j < $num; $j++)
{
//Is bit $j set in $i?
if (pow(2, $j) & $i) $ff = $array2[$j] . ' ';
}
$temp[] = $ff;
}
print_r($temp);