【问题标题】:Multidimension arrays in phpphp中的多维数组
【发布时间】:2014-05-18 15:28:03
【问题描述】:

我已经创建了一个多维数组

Array
 (
   [0] => Array
     (
        [0] => 9
        [1] => 10
        [2] => 12
        [3] => 13
        [4] => 14
        [5] => 19
        [6] => 21
        [7] => 26
        [8] => 31
     )

   [1] => Array
     (
        [0] => 0
        [1] => 290
        [2] => 852
        [3] => 9
        [4] => 896
        [5] => 0
        [6] => 0
        [7] => 0
        [8] => 0
     )

 )

我需要获取值 9、10、12、13、14、19、21、26、31 并将它们与值 0、290、852、9890、0、0、0、0 匹配。这些数字是动态生成的,因此会生成更多的数字

我已经尝试了各种方法来使用 foreach 循环完成它,我还想使用第二个数字按降序对它们进行排序,请帮助

我的意思是它们看起来像这样

  • 9 0

  • 10 290

  • 12 852

  • 13 9

  • 14 890

  • 19 0

  • 21 0

  • 26 0

  • 31 0

当我打印它们以便我可以使用第二列按降序对它们进行排序时

【问题讨论】:

  • 向我们展示您的尝试
  • 您是在尝试特定匹配还是在寻找通用方法?另外,您的意思是要设置数组元素彼此相等吗?例如 $array[0][0] = $array[1][0];

标签: php multidimensional-array foreach


【解决方案1】:

我猜是这样的,

$res = array();
$l1 = count($src[0]);
$l2 = count($src[1]);

if($l1 == $l2){

  for($i = 0; $i < $l1; $i++){
    $res[$src[0][$i] + ''] = $src[1][$i];
  }

}

【讨论】:

    【解决方案2】:

    我不确定你在问什么,但这可能会对你有所帮助

    要获得两个数组中的共同值,请使用 array_intersect

    $abc = array_intersect($array[0], $array[1]);
    

    要获得这些数组的差异,请使用 array_diff

    $abc= array_diff($array[0], $array[1]);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-20
      • 1970-01-01
      • 1970-01-01
      • 2022-01-07
      • 2013-03-04
      • 2011-09-22
      相关资源
      最近更新 更多