mirror of
https://github.com/php/php-src.git
synced 2024-12-04 15:23:44 +08:00
e43c21e53a
Closing a original handle after copying it now no longer cleans up all resources (fixes missing CURLOPT_POSTFIELDS values among others)
53 lines
1.2 KiB
PHP
53 lines
1.2 KiB
PHP
--TEST--
|
|
curl_setopt basic tests with CURLOPT_STDERR.
|
|
--CREDITS--
|
|
Paul Sohier
|
|
#phptestfest utrecht
|
|
--SKIPIF--
|
|
<?php if (!extension_loaded("curl") || false === getenv('PHP_CURL_HTTP_REMOTE_SERVER')) print "skip need PHP_CURL_HTTP_REMOTE_SERVER environment variable"; ?>
|
|
--FILE--
|
|
<?php
|
|
|
|
$host = getenv('PHP_CURL_HTTP_REMOTE_SERVER');
|
|
|
|
// start testing
|
|
echo "*** Testing curl_setopt with CURLOPT_STDERR\n";
|
|
|
|
$temp_file = tempnam(sys_get_temp_dir(), 'CURL_STDERR');
|
|
|
|
$handle = fopen($temp_file, 'w');
|
|
|
|
$url = "{$host}/";
|
|
$ch = curl_init();
|
|
|
|
curl_setopt($ch, CURLOPT_VERBOSE, 1);
|
|
curl_setopt($ch, CURLOPT_STDERR, $handle);
|
|
$curl_content = curl_exec($ch);
|
|
|
|
fclose($handle);
|
|
unset($handle);
|
|
var_dump(preg_replace('/[\r\n]/', ' ', file_get_contents($temp_file)));
|
|
@unlink($temp_file);
|
|
|
|
ob_start(); // start output buffering
|
|
$handle = fopen($temp_file, 'w');
|
|
curl_setopt($ch, CURLOPT_URL, $url); //set the url we want to use
|
|
curl_setopt($ch, CURLOPT_STDERR, $handle);
|
|
$data = curl_exec($ch);
|
|
ob_end_clean();
|
|
|
|
fclose($handle);
|
|
unset($handle);
|
|
var_dump(preg_replace('/[\r\n]/', ' ', file_get_contents($temp_file)));
|
|
@unlink($temp_file);
|
|
|
|
curl_close($ch);
|
|
|
|
?>
|
|
--EXPECTF--
|
|
*** Testing curl_setopt with CURLOPT_STDERR
|
|
string(%d) "%S"
|
|
string(%d) "%S"
|
|
* Closing connection #%d
|
|
|