How to take user input for two dimensional (2D) array in PHP ? Last Updated : 12 Jul, 2025 Comments Improve Suggest changes 1 Likes Like Report There are two methods to take user input in PHP in two dimensional (2D) array. Approach 1: Use HTML forms through PHP GET & POST method to take user input in two dimensional (2D) array.First, input data into HTML forms.Then use the GET or POST method of PHP to get or post those input data into a variable.Finally, use that variable that holds input data and process using for loop.Though it is from a two-dimensional array so, you need two indices/variables for processing in for loop.Enter input one below another to state as two variables. Example 1: Below example illustrate how to input user data for 2D-array using the Form POST method. php <?php echo "Enter n for nxn : <br>"; echo "<form method='POST'> Row:<input type='number' min='2' max='5' name='1d' value='1'/> Column:<input type='number' min='2' max='5' name='2d' value='1'/> <input type='submit' name='submit' value='Submit'/> </form>"; // Submit user input data for 2D array if (isset($_POST['submit'])) { // POST submitted data $dimention1 = $_POST["1d"]; // POST submitted data $dimention2 = $_POST["2d"]; echo "Entered 2d nxn: " . $dimention1 . "x" . $dimention2 . " <br>"; $d = []; $k = 0; for($row = 0; $row < $dimention1; $row++) { for ($col = 0; $col < $dimention2; $col++) { $d[$row][$col]= $k++; } } for ($row = 0; $row < $dimention1; $row++) { for ($col = 0; $col < $dimention2; $col++) { echo $d[$row][$col]." "; } echo "<br>"; } } ?> Output: Approach 2: To take user input in PHP for two dimensional (2D) by using fopen() function which helps to get user input either at runtime or by the external input file.First, assign those input data to variables.Finally, use those variables which hold input data and process using for loop.Though it is from a two-dimensional array so, you need two indices/variables for processing in for loop. Example: Below example illustrates how to input user data for a 2D array using fopen() function. php <?php // fopen() using standard input $stdin = fopen('php://stdin', 'r'); ?> <?php error_reporting(0); echo "\n\n\nEnter row and column: \n"; // Right trim fgets(user input) $dimention1 = rtrim(fgets($stdin)); // Right trim fgets(user input) $dimention2 = rtrim(fgets($stdin)); echo "Entered row and column: " . $dimention1 . "x" . $dimention1 . " \n"; $d = []; $k = 0; for ($row = 0; $row < $dimention1; $row++) { for ($col = 0; $col < $dimention2; $col++) { $d[$row][$col]= $k++; } } for ($row = 0; $row < $dimention1; $row++) { for ($col = 0; $col < $dimention2; $col++) { echo $d[$row][$col]." "; } echo "\n"; } ?> Output: Reference: https://www.geeksforgeeks.org/php/php-fopen-function-open-file-or-url/ Create Quiz Comment V VigneshKannan3 Follow 1 Improve V VigneshKannan3 Follow 1 Improve Article Tags : Web Technologies PHP PHP-Misc Explore BasicsPHP Syntax4 min readPHP Variables5 min readPHP | Functions6 min readPHP Loops4 min readArrayPHP Arrays5 min readPHP Associative Arrays4 min readMultidimensional arrays in PHP5 min readSorting Arrays in PHP4 min readOOPs & InterfacesPHP Classes2 min readPHP | Constructors and Destructors5 min readPHP Access Modifiers4 min readMultiple Inheritance in PHP4 min readMySQL DatabasePHP | MySQL Database Introduction4 min readPHP Database connection2 min readPHP | MySQL ( Creating Database )3 min readPHP | MySQL ( Creating Table )3 min readPHP AdvancePHP Superglobals6 min readPHP | Regular Expressions12 min readPHP Form Handling4 min readPHP File Handling4 min readPHP | Uploading File3 min readPHP Cookies9 min readPHP | Sessions7 min read Like