I want to create a command line program using PHP. How do I design the program’s I/O?
I can send output as text. I am wondering about the specific output syntax. For example: In HTML i use
<br/> to pass to a new line. How can I do this using terminal/file output? Is there a reference for terminal/file oriented programming in PHP?
Writing command-line PHP scripts is quite simple, actually. You output text in the exact same way you would normally:
echo both print text to the console. The only difference here is that you can’t use HTML tags for formatting, since your code isn’t being interpreted by a web browser (i.e.
"\n" will actually create a visible line break, not
Reading input from stdin is a little trickier, but all it really involves is essentially using some of the file reading functions (e.g.
fscanf()) and passing in
STDIN as the file path (or
php://stdin, depending on how new your version of PHP is).
And yes, there is a reference for command-line programming in PHP on php.net. It covers pretty much everything you need to know to work with PHP in a command-line environment.
When writing a CLI script consider ending lines with PHP_EOL so it will be cross platform compatible with UNIX (
\n ), Windows (
\n\r ) and Mac (
\r ). And when you whant to print it as html use the PHP’s nl2br function.