array( 'method' => "GET", 'header' => "Accept-Encoding: deflate, gzip\r\n" ) ))); $meta = stream_get_meta_data($fp); $passed = true; foreach ($meta['wrapper_data'] as $i => $header) { if ((preg_match('@^Content-Length: (\\d+)$@i', $header, $m) && $m[1] !== '6') || preg_match('@^Content-Encoding:@i', $header, $m) ) { $passed = false; break; } } $streamContents = stream_get_contents($fp); if ($passed && $streamContents !== 'World!') { $passed = false; } assertTrue( $passed ,'environment : PHP/server does not auto-HTTP-encode content' ); fclose($fp); if (! $passed) { echo "\nReturned content should be 6 bytes and not HTTP encoded.\n" . "Headers returned by: {$thisUrl}?hello=1\n"; var_export($meta['wrapper_data']); echo "\nContent body: "; var_export($streamContents); echo "\n\n"; if ('1' === $oc) { echo "!NOTE: environment : zlib.output_compression='On' OR " . " output_handler='ob_gzhandler' in php.ini or .htaccess.\n"; } } } test_environment();