Thursday, October 16, 2025
HomeLanguagesHow to take user input for two dimensional (2D) array in PHP...

How to take user input for two dimensional (2D) array in PHP ?

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-fopen-function-open-file-or-url/ 

RELATED ARTICLES

Most Popular

Dominic
32361 POSTS0 COMMENTS
Milvus
88 POSTS0 COMMENTS
Nango Kala
6728 POSTS0 COMMENTS
Nicole Veronica
11892 POSTS0 COMMENTS
Nokonwaba Nkukhwana
11954 POSTS0 COMMENTS
Shaida Kate Naidoo
6852 POSTS0 COMMENTS
Ted Musemwa
7113 POSTS0 COMMENTS
Thapelo Manthata
6805 POSTS0 COMMENTS
Umr Jansen
6801 POSTS0 COMMENTS