Как генерировать комбинации элементов в нескольких массивах?

Это - мой первый вопрос здесь :)

Я имею массив со многими детьми массива, каждого с уникальными значениями и хотел бы получить все возможные уникальные комбинации тех значений.

Количество массивов известно, но может изменяться со временем.

Например,

array(
  [0] => array([0]=>'blue',[1]=>'red'),
  [1] => array([0]=>'sunny',[1]=>'cloudy'),
  [2] => array([0]=>'sweet',[1]=>'acid');

Что должно я делать для получения:

array(
  [0] => array([0]=>'blue',[1]=>'sunny',[2]=>'sweet'),
  [1] => array([0]=>'blue',[1]=>'sunny',[2]=>'acid'),
  [2] => array([0]=>'blue',[1]=>'cloudy',[2]=>'sweet'),
  [3] => array([0]=>'blue',[1]=>'cloudy',[2]=>'acid'),
  [4] => array([0]=>'red',[1]=>'sunny',[2]=>'sweet'),
  [5] => array([0]=>'red',[1]=>'sunny',[2]=>'acid'),
  [6] => array([0]=>'red',[1]=>'cloudy',[2]=>'sweet'),
  [7] => array([0]=>'red',[1]=>'cloudy',[2]=>'acid'));

Я попытался делать его с вложенными циклами, но моя логика не слишком сильна.

Очень ценивший, если кто-то может пролить некоторый свет

5
задан Fer 15 August 2010 в 01:03
поделиться