It's worth mentioning that passing an empty array will NOT reset default options.
<?php
stream_context_set_default(array()); // Does nothing.
?>(PHP 5 >= 5.3.0, PHP 7, PHP 8)
stream_context_set_default — Set the default stream context
Set the default stream context which will be used whenever file operations (fopen(), file_get_contents(), etc...) are called without a context parameter. Uses the same syntax as stream_context_create().
optionsThe options to set for the default context.
Note:
optionsmust be an associative array of associative arrays in the format$arr['wrapper']['option'] = $value.
Returns the default stream context.
Example #1 stream_context_set_default() example
<?php
$default_opts = [
  'http' => [
    'method' => "GET",
    'header' => "Accept-language: en\r\n" .
                "Cookie: foo=bar",
    'proxy'  => "tcp://10.54.1.39:8000",
  ]
];
$default = stream_context_set_default($default_opts);
/* Sends a regular GET request to proxy server at 10.54.1.39
 * For www.example.com using context options specified in $default_opts
 */
readfile('http://www.example.com');
?>
It's worth mentioning that passing an empty array will NOT reset default options.
<?php
stream_context_set_default(array()); // Does nothing.
?>