Creates a stream context

# stream_context_create

(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)

stream_context_create — Creates a stream context

### Description

stream_context_create(?array `$options` = `null`, ?array `$params` = `null`): resource

Creates and returns a stream context with any options supplied in `options` preset.

### Parameters

`options`

  Must be an associative array of associative arrays in the format `$arr['wrapper']['option'] = $value`, or `null`. Refer to context options for a list of available wrappers and options.

  Defaults to `null`.

`params`

  Must be an associative array in the format `$arr['parameter'] = $value`, or `null`. Refer to context parameters for a listing of standard stream parameters.

### Return Values

A stream context resource.

### Changelog

Version | Description
--- | ---
8.0.0 | `options` and `params` are now nullable.

### Examples

Example #1 Using stream_context_create()

`<?php
$opts = [
'http' => [
'method' => "GET",
// Use CRLF \r\n to separate multiple headers
'header' => "Accept-language: en\r\n" .
"Cookie: foo=bar",
]
];
$context = stream_context_create($opts);
/* Sends an http request to www.example.com
with additional headers shown above */
$fp = fopen('http://www.example.com', 'r', false, $context);
fpassthru($fp);
fclose($fp);
?>`

### See Also

- stream_context_set_option() - Sets an option for a stream/wrapper/context
- Listing of supported wrappers (Supported Protocols and Wrappers)
- Context options (Context options and parameters)

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open