値がいくつか入った配列があり、この配列から任意の個数を取り出して、
「組み合わせを生成した配列」を出力するという処理を実装したいと思っています。

例えば、
 $data = array('1','2','3');
という配列から、変数$outputに2個ずつ取り出すとすれば、
 $output[0][0] = '1';
 $output[0][1] = '2';
 $output[1][0] = '1';
 $output[1][1] = '3';
 $output[2][0] = '2';
 $output[2][1] = '3';
という組み合わせが重複しない、全3パターンの出力が欲しいのです。

そこで、過去スレを確認したところ、同様の質問があり、解答も貼られていたのですが、
(解答:http://pc11.2ch.net/test/read.cgi/php/1253061577/870)
ある配列の中身の時に上手く動作してくれません。
例えば、
 for($i=0;$i<69;$i++){
  $data[$i] = $i;
 }
 $output = combinations3($data,6);
 print_r($output);
の時などです。

入力する配列が悪いのでしょうか、それともプログラムにバグがあるのでしょうか。
分かる方がいたら、よろしくお願いいたします。

解答が貼られた過去スレ(【PHP】下らねぇ質問はID出して書き込みやがれ 88)が落ちてしまっているので、
次のレスで、過去に貼られたプログラムを貼らせていただきます。