ob_start changed from php4 to php5?
| From: | Marten Lehmann | Date: | Wed, 17 Aug 2005 17:12:05 +0000 |
| Subject: | ob_start changed from php4 to php5? | ||
| Groups: | php.general | ||
| Request: | Send a blank email to php-general+get-220780@lists.php.net to get a copy of this message | ||
Hello,
I have a function catching the output of a script:
function encodeDomain ($domain) {
ob_start();
system("echo '$domain'");
$output = ob_get_contents();
ob_end_clean();
}
And I have a php-script using this function:
<?
encodeDomain($domain);
header("Location: http://www.php.net");
?>
While this worked fine in PHP4, with PHP5.0.4 I always get the following error:
Warning: Cannot modify header information - headers already sent in test.php on line 4
The redirect works if I don't use the encodeDomain() function. Does the system-output affect the php-outout status in any way? I checked the raw http-output and I can see nothing of the output from the system()-call. Does maybe PHP simply say "output has been send" although it hasn't been send actually?
Regards
Marten