Jochem Maas wrote:
I mean that the shebang line at the top of the included file is output
to stdout even when I turn on output buffering on prior to including the file.

nothing else is output but that's because the script doesn't generate any further output - it logs everything instead - and I know it runs because the relevant lines appear in the relevant log file.


I don't know what goes wrong here. I took your script and it just works, so it is not your code (I guess).

I've done this:

$oldIFvalue = ini_set('implicit_flush', false);

ob_start();

if (!include 'scrap2.php') {

   ob_end_clean();
}
else {

   $output = explode("\n", ob_get_clean());

   if ($output[0] && preg_match('%^#!%', $output[0]))
       unset($output[0]);

   echo implode("\n", $output);
}

ini_set('implicit_flush', $oldIFvalue);

The only difference is it echoes imploded $output. And I do a bit different preg_match ^#! instead of ^#!\/

If you can include the script you want to include, than it should work.
If you can buffer output without the include file, than it should work.
If you can dump $output after you've done the explode, than it should work.

So, I don't know what goes wrong.


--
Aschwin Wesselius

<social>

What you would like to be done to you, do that to the other....

</social>

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to