У меня есть двумерный массив с неизвестным количеством элементов.
$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”; }
Мне действительно нужно знать значение строк и столбцов, чтобы выполнять другие вычисления.
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++ ) { ... } }
Это то, что я делаю: массив супергероев:
$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
PHP
Для многомерного массива php используйте
$rowSize = count( $arrayName ); $columnSize = max( array_map('count', $arrayName) );
Если вам нужно знать фактическое число, то вы можете использовать функции sizeof()
или count()
чтобы определить размер каждого элемента массива.
$rows = count($two_darray) // This will get you the number of rows foreach ($two_darray as $row => $column) { $cols = count($row); }
быстрый способ для нормального, не смешанного 2-мерного массива,
$ Ряды = счетчик ($ массив); $ Colomns = (количество ($ массив, 1) -count ($ массив)) / счетчик ($ массив);