Re: [PHP] Catch STDERR
- From: ceo@xxxxxxxxx ("Richard Lynch")
- Date: Tue, 20 Feb 2007 17:42:59 -0600 (CST)
On Sat, February 17, 2007 2:49 pm, Peter Lauri wrote:
I am executing exec('some cool command', $stdout, $exitcode);
That is fine. I get what I in the beginning wanted. However, now I
need to
catch the STDERR that the command is generating as well. Some of you
might
tell me to redirect STDERR to STDOUT, but that is not possible as I
need to
use the STDOUT as is to automate a process.
I know I can do fwrite(STDERR, 'Output some error\n');
So could I fread(STDERR, SOMESIZE)?
Do you need STDERR to go "out" to, err, wherever it goes, *AND* get it
into your PHP script?
Perhaps 'tee' (man tee) would let you do that.
Or do you just need STDOUT in one variable, and STDERR in another,
both in PHP?
I think you could do something in shell to re-bind STDOUT to some
other file/pipe, and then run your cool command...
$tmpfile = tmpfile(); //I always get this one wrong.
exec("rebind 2 $tmpfile; some cool command', $output, $error);
$stderr = file_get_contents($tmpfile);
It's probably not called 'rebind' but I know it's some shell command
that does this.
Possibly shell-specific, so you may even need to wrap the whole thing
in a 'bash' call.
Another option is to try to write a .sh shell script to get what you
want for STDOUT to go where you want, and THEN just call that script
(which has 'some cool command' at the end) from PHP, and let the
weird-o shell stuff be done in a shell script, and not clutter up your
PHP code with a complex shell script setup/tear-down.
Is there anyone with experience of best way of doing this? Should I
maybe
use proc_open or something similar and then write it to a file, and
then
read that file? Hrm, doesn?t make any sense to do that.
--
Some people have a "gift" link here.
Know what I want?
I want you to buy a CD from some starving artist.
http://cdbaby.com/browse/from/lynch
Yeah, I get a buck. So?
.
- Follow-Ups:
- RE: [PHP] Catch STDERR
- From: "Peter Lauri"
- RE: [PHP] Catch STDERR
- References:
- Catch STDERR
- From: "Peter Lauri"
- Catch STDERR
- Prev by Date: Re: [PHP] PHP Startup: Unable to load dynamic library
- Next by Date: RE: [PHP] LOL, preg_match still not working.
- Previous by thread: RE: [PHP] Catch STDERR
- Next by thread: RE: [PHP] Catch STDERR
- Index(es):
Relevant Pages
|