PHP Files
Writing to Standard Output
Problem
You want to write to standard output.
Solution
Use echo or print():
print "Where did my pastrami sandwich go?";
echo "It went into my stomach.";
Discussion
Whereas print() is a function, echo is a language construct. This means that print() returns a value, and echo doesn’t. You can include print() but not echo in larger expressions, as shown:
// 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 filehandle 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.
You can write to standard error by opening php://stderr: $fh = fopen('php:// stderr','w');.
No comments:
Post a Comment