在php中,二维数组中的行数和列数?

时间:2013-07-21 21:47:57

标签: php arrays

我有一个具有未知数量元素的二维数组。

$two_darray[row][column]; //there will be an unknown integer values instead of row and column keywords

如果我按如下方式编写for循环,如何确定$two_darray中的行数和列数。你能否告诉我,如果php中有一个库函数可以告诉我[????] [????]中的值

for($row=0; $row<………; $row++)
{
    for($column =0; $column  <………; $ column ++)
    {
        echo $two_darray[$row][$column];
    }
    echo “\n end of one column \n”;
}

我真的需要知道行和列的值才能执行其他计算。

6 个答案:

答案 0 :(得分:5)

foreach ($two_darray as $key => $row) {
   foreach ($row as $key2 => $val) {
      ...
   }
}

无需担心每个数组中有多少元素,因为foreach()会为您处理它。如果你绝对拒绝使用foreach,那么每个阵列只需count()

$rows = count($two_d_array);
for ($row = 0; $row < $rows; $row++) {
     $cols = count($two_darray[$row]);
     for($col = 0; $col < $cols; $col++ ) {
        ...
     }
}

答案 1 :(得分:2)

对于php多维数组,请使用

$rowSize = count( $arrayName );
$columnSize = max( array_map('count', $arrayName) );

答案 2 :(得分:2)

这就是我所做的: 我的超级英雄&#39;阵列:

$superArray[0][0] = "DeadPool";
$superArray[1][0] = "Spiderman";
$superArray[1][1] = "Ironman";
$superArray[1][2] = "Wolverine";
$superArray[1][3] = "Batman";

获取尺寸:

echo count( $superArray ); // Print out Number of rows = 2
echo count( $superArray[0] ); // Print Number of columns in $superArray[0] = 1
echo count( $superArray[1] ); // Print Number of columns in $superArray[1] = 4

答案 3 :(得分:0)

如果您需要知道实际数字,则可以使用sizeof()count()函数来确定每个数组元素的大小。

$rows = count($two_darray) // This will get you the number of rows

foreach ($two_darray as $row => $column)
{
    $cols = count($row);
}

答案 4 :(得分:0)

普通,非混合2维数组的快速方法,

$ =行计数($阵列); $ colomns =(计数($阵列,1)-count($阵列))/计数($阵列);

答案 5 :(得分:0)

用于php 索引二维数组:

$arName = array(
  array(10,11,12,13),
  array(20,21,22,23),
  array(30,31,32,33)
);

$col_size=count($arName[$index=0]);

for($row=0; $row<count($arName); $row++)
{
  for($col=0; $col<$col_size; $col++)
  {
    echo $arName[$row][$col]. " ";
  }
  echo "<br>";
}

输出:

10 11 12 13
20 21 22 23
30 31 32 33