【问题标题】:Calculate possible combinations of an array in order of presented arrays按呈现数组的顺序计算数组的可能组合
【发布时间】:2009-11-23 20:05:47
【问题描述】:

这是一个 php 问题。

我有一个数组数组:

数组 ( [1] => 数组 ( [1] => 1 [2] => 2 [3] => 3) [2] => 数组 ( [4] => 4 ) [3] =>数组([7] => 7 [8] => 8 [9] => 9)[4] => 数组([36] => 36))

我需要按顺序排列所有可能的组合,但不要乱序,并且永远不要错过以前的可能......这可能是一个糟糕的解释,但这就是我的意思:

1

1 - 4

1 - 4 - 7

1 - 4 - 8

1 - 4 - 9

1 - 4 - 7 - 36

1 - 4 - 8 - 36

1 - 4 - 9 - 36

我不想得到 1 - 9 - 4,因为它必须使用数组作为顺序,我不能跳过任何像 1 - 9 - 36 一样的东西

任何帮助将不胜感激!

我尝试了以下解决方案(在更大更现实的数组上):

$myarray = 'a:4:{i:1;a:29:{i:1;s:1:"1";i:2;s:1:"2";i:3;s:1:"3";i:10;s:2:"10";i:11;s:2:"11";i:12;s:2:"12";i:13;s:2:"13";i:14;s:2:"14";i:15;s:2:"15";i:16;s:2:"16";i:17;s:2:"17";i:18;s:2:"18";i:19;s:2:"19";i:20;s:2:"20";i:21;s:2:"21";i:22;s:2:"22";i:23;s:2:"23";i:24;s:2:"24";i:25;s:2:"25";i:26;s:2:"26";i:27;s:2:"27";i:28;s:2:"28";i:29;s:2:"29";i:30;s:2:"30";i:31;s:2:"31";i:32;s:2:"32";i:33;s:2:"33";i:34;s:2:"34";i:35;s:2:"35";}i:2;a:3:{i:4;s:1:"4";i:5;s:1:"5";i:6;s:1:"6";}i:3;a:3:{i:7;s:1:"7";i:8;s:1:"8";i:9;s:1:"9";}i:4;a:2:{i:36;s:2:"36";i:37;s:2:"37";}}';

$yourarray = unserialize($myarray);

$array_iter = new RecursiveArrayIterator($yourarray); $iter_iter = new RecursiveIteratorIterator($array_iter);

foreach($iter_iter as $iwishitwashomework) { 回声 $iwishitwashhomework; }`

这是打印出来的:

12310111213141516171819202122232425262728293031323334354567893637

【问题讨论】:

  • 不,这是一个糟糕的问题,我该怎么做这个快速的问题
  • 嘿,你找到答案了吗?寻找相同的:)

标签: php arrays


【解决方案1】:
$array_iter   = new RecursiveArrayIterator($yourarray);
$iter_iter    = new RecursiveIteratorIterator($array_iter);

foreach($iter_iter as $myhomework)
{
echo $myhomework;
}

【讨论】:

  • 这是打印出来的:12310111213141516171819202122232425262728293031323334354567893637
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-23
  • 2019-05-08
相关资源
最近更新 更多