function combinations($arr, $size) {
for ($i = 0; $i < $size; $i++) {
for ($j = 0; $j <= $size - 1; $j++) {
for ($k = 0; $k <= $size - 1; $k++) {
echo $arr[$i] . $arr[$j] . $arr[$k] . "\n";
}
}
}
}
$arr = array('a', 'b', 'c');
combinations($arr, 3);
/*
run:
aaa
aab
aac
aba
abb
abc
aca
acb
acc
baa
bab
bac
bba
bbb
bbc
bca
bcb
bcc
caa
cab
cac
cba
cbb
cbc
cca
ccb
ccc
*/