Multidimensional arrays in PHP

Multi-dimensional arrays are such type of arrays which stores an another array at each index instead of single element. In other words, define multi-dimensional arrays as array of arrays. As the name suggests, every element in this array can be an array and they can also hold other sub-arrays within. Arrays or sub-arrays in multidimensional arrays can be accessed using multiple dimensions.
Dimensions: Dimensions of multidimensional array indicates the number of indices needed to select an element. For a two dimensional array two indices to select an element.
Two dimensional array: It is the simplest form of a multidimensional array. It can be created using nested array. These type of arrays can be used to store any type of elements, but the index is always a number. By default, the index starts with zero.
Syntax:
array (
array (elements...),
array (elements...),
...
)
Example:
<?php   // PHP program to create // multidimensional array   // Creating multidimensional // array $myarray = array(           // Default key for each will     // start from 0     array("Ankit", "Ram", "Shyam"),     array("Unnao", "Trichy", "Kanpur") );       // Display the array information print_r($myarray); ?> |
Array
(
[0] => Array
(
[0] => Ankit
[1] => Ram
[2] => Shyam
)
[1] => Array
(
[0] => Unnao
[1] => Trichy
[2] => Kanpur
)
)
Two dimensional associative array: Al associative array is similar to indexed array but instead of linear storage (indexed storage), every value can be assigned with a user-defined key of string type.
Example:
<?php   // PHP program to creating two // dimensional associative array $marks = array(           // Ankit will act as key     "Ankit" => array(                   // Subject and marks are         // the key value pair         "C" => 95,         "DCO" => 85,         "FOL" => 74,     ),               // Ram will act as key     "Ram" => array(                   // Subject and marks are         // the key value pair         "C" => 78,         "DCO" => 98,         "FOL" => 46,     ),           // Anoop will act as key     "Anoop" => array(                   // Subject and marks are         // the key value pair         "C" => 88,         "DCO" => 46,         "FOL" => 99,     ), );   echo "Display Marks: \n";       print_r($marks); ?> |
Display Marks:
Array
(
[Ankit] => Array
(
[C] => 95
[DCO] => 85
[FOL] => 74
)
[Ram] => Array
(
[C] => 78
[DCO] => 98
[FOL] => 46
)
[Anoop] => Array
(
[C] => 88
[DCO] => 46
[FOL] => 99
)
)
Three Dimensional Array: It is the form of multidimensional array. Initialization in Three-Dimensional array is same as that of Two-dimensional arrays. The difference is as the number of dimension increases so the number of nested braces will also increase.
Syntax:
array (
array (
array (elements...),
array (elements...),
...
),
array (
array (elements...),
array (elements...),
...
),
...
)
Example:
<?php   // PHP program to creating three // dimensional array   // Create three nested array $myarray = array(     array(         array(1, 2),         array(3, 4),     ),     array(         array(5, 6),         array(7, 8),     ), );       // Display the array information print_r($myarray); ?> |
Array
(
[0] => Array
(
[0] => Array
(
[0] => 1
[1] => 2
)
[1] => Array
(
[0] => 3
[1] => 4
)
)
[1] => Array
(
[0] => Array
(
[0] => 5
[1] => 6
)
[1] => Array
(
[0] => 7
[1] => 8
)
)
)
Accessing multidimensional array elements: There are mainly two ways to access multidimensional array elements in PHP.
- Elements can be accessed using dimensions as array_name[‘first dimension’][‘second dimension’].
- Elements can be accessed using for loop.
- Elements can be accessed using for each loop.
Example:
<?php   // PHP code to create // multidimensional array   // Creating multidimensional // associative array $marks = array(           // Ankit will act as key     "Ankit" => array(                   // Subject and marks are         // the key value pair         "C" => 95,         "DCO" => 85,         "FOL" => 74,     ),               // Ram will act as key     "Ram" => array(                   // Subject and marks are         // the key value pair         "C" => 78,         "DCO" => 98,         "FOL" => 46,     ),           // Anoop will act as key     "Anoop" => array(                   // Subject and marks are         // the key value pair         "C" => 88,         "DCO" => 46,         "FOL" => 99,     ), );   // Accessing the array element // using dimensions       // It will display the marks of // Ankit in C subject echo $marks['Ankit']['C'] . "\n";       // Accessing array elements using for each loop foreach($marks as $mark) {     echo $mark['C']. " ".$mark['DCO']." ".$mark['FOL']."\n"; }       ?> |
95 95 85 74 78 98 46 88 46 99
PHP is a server-side scripting language designed specifically for web development. You can learn PHP from the ground up by following this PHP Tutorial and PHP Examples.




