Reading Data from Keyboard in PHP


How To Read Data from Keyboard (Standard Input) in PHP?



If you want to read data from the standard input, usually the keyboard, you can use the fopen("php://stdin") function. It creates a special file handle linking to the standard input, and returns the file handle. Once the standard input is opened to a file handle, you can use fgets() to read one line at a time from the standard input like a regular file. Remember fgets() also includes "\n" at the end of the returning string. Here is a PHP script example on how to read from standard input:

$stdin = fopen("php://stdin", "r");
print("What's your name?\n");
$name = fgets($stdin);
print("Hello $name!\n");

This script will print:

What's your name?
Hello Leo

"!" is showing on the next line, because $name includes "\n" returned by fgets(). You can use rtrim() to remove "\n".

If you are using your script in a Web page, there is no standard input.

If you don't want to open the standard input as a file handle yourself, you can use the constant STDIN predefined by PHP as the file handle for standard input.


Opening Standard Output as a File Handle in PHP

Writing an Array to a File without File Handle in PHP

Reading and Writing Files in PHP

⇑⇑ PHP Tutorials

2024-01-16, 13747🔥, 5💬