我有一个具有未知数量元素的二维数组。
$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”;
}
我真的需要知道行和列的值才能执行其他计算。
答案 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