Recipe 18.19 Writing to Standard Output
18.19.1 Problem
You want to write to standard output.
18.19.2 Solution
Use echo or print:
print "Where did my pastrami sandwich go?";
echo "It went into my stomach.";
18.19.3 Discussion
While print( )
is a function,
echo is a language construct. This means that
print( ) returns a value, while
echo doesn't. You can include
print( ) but not echo in larger
expressions:
// this is OK
(12 == $status) ? print 'Status is good' : error_log('Problem with status!');
// this gives a parse error
(12 == $status) ? echo 'Status is good' : error_log('Problem with status!');
Use php://stdout as the filename if
you're using the file functions:
$fh = fopen('php://stdout','w') or die($php_errormsg);
Writing to standard output via a file handle instead of simply with
print( ) or echo is useful if
you need to abstract where your output goes, or if you need to print
to standard output at the same time as writing to a file. See Section 18.20 for details.
You can also write to standard error by
opening php://stderr:
$fh = fopen('php://stderr','w');
18.19.4 See Also
Section 18.20 for writing to many filehandles
simultaneously; documentation on echo at
http://www.php.net/echo and on print(
) at http://www.php.net/print.
|