How do i scan a value in php?

View Discussion

Improve Article

Save Article

  • Read
  • Discuss
  • View Discussion

    Improve Article

    Save Article

    In PHP, the console is a command-line interface, which is also called interactive shell. We can access it by typing the following command in a terminal: 

    php -a

    If we type any PHP code in the shell and hit enter, it is executed directly and displays the output or shows the error messages in case of any error. A sample run of a PHP code, that reads input from PHP console looks like this: 
     

    How do i scan a value in php?

    In this article, We will discuss two methods for reading console or user input in PHP: 
    Method 1: Using readline() function is a built-in function in PHP. This function is used to read console input. 
    The following things can be achieved by readline() function
     

    • Accept a single input by prompting the user:

    PHP

    $a = readline('Enter a string: ');

    echo $a;   

    ?>

    Output: 

    Enter a string: GeeksforGeeks
    GeeksforGeeks
    • By default, the data type of the variable accepted through readline() function is string. So for any other data type, we have to typecast it explicitly as described below.

    PHP

    $a = (int)readline('Enter an integer: ');

    $b = (float)readline('Enter a floating'

                . ' point number: ');

    echo "Entered integer is " . $a

        . " and entered float is " . $b;

    ?>

    Output: 

    Enter an integer: 10
    Enter a floating point number: 9.78
    Entered integer is 10 and entered float is 9.78
    • We can achieve the same things without prompting the user also: 
    $a = readline();
    • In this case, as soon as the user hits enter, the entered value is stored in the variable a.
    • Accept multiple space separated inputs: For this, we use another function explode() together with readline(). The first argument of explode() is the delimiter we want to use. In the below example, the delimiter is space. The second argument is the readline() function. Here also the data type of $var1 and $var2 will be string. So we have to separately typecast them for other data types. In the above example, the typecasting is shown for integers. 

    PHP

    list($var1, $var2)

            = explode(' ', readline());

    $var1 = (int)$var1;

    $var2 = (int)$var2;

    echo "The sum of " . $var1 . " and "

        . $var2 . " is " . ($var1 + $var2);

    ?>

    Output:
    The sum of 10 and 20 is 30
     

    • We can also read an array through explode(): 

    PHP

    $arr = explode(' ', readline());

    print_r($arr);

    ?>

    Output: 

    Array
    (
        [0] => 1
        [1] => 2
        [2] => 3
        [3] => 4
        [4] => 5
        [5] => 6
    )

    Method 2: Using fscanf() function works same as the fscanf() function in C. We can read 2 integers from Keyboard(STDIN) as below: 

    • This is different from the previous method 

    PHP

    fscanf(STDIN, "%d %d", $a, $b);

    echo "The sum of " . $a . " and "

        . $b . " is " . ($a + $b);

    ?>

    Output: 

    The sum of 1 and 5 is 6

    Comparison between two methods: 

    • No need to use explicit typecasting for fscanf() function, because it is done by the format specifiers , e.g. %d, %f, %c etc. You can read more about format specifiers.
    • fscanf() function is much faster than the readline() function.

    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.


    Does PHP have Scanf?

    The sscanf() is predefined PHP function. It is used to return parses input from a string according to a format. If we will pass two parameters in the function, the data will be returned as an array.

    How can we take input from user in PHP?

    To get input from users, you also have to prompt them to enter something. You can use PHP's `readline() function to get this input from the console.

    How can I take input from HTML to PHP?

    Use PHP's $_POST or $_GET superglobals to retrieve the value of the input tag via the name of the HTML tag. To show the value:

    What is $_ POST in PHP?

    PHP $_POST is a PHP super global variable which is used to collect form data after submitting an HTML form with method="post". $_POST is also widely used to pass variables. The example below shows a form with an input field and a submit button.