stream_context_get_default
(PHP 5 >= 5.1.0, PHP 7)
stream_context_get_default — Получает контекст потока по умолчанию
Описание
$options
] )Возвращает контекст потока по умолчанию, который используется в любых файловых операциях (fopen(), file_get_contents(), etc...), вызванных без параметра контекста. Опции для контекста по умолчанию могут быть опционально указаны с этой функцией используя тот же синтаксис, что и для stream_context_create().
Список параметров
-
options
-
options
должны быть ассоциативным массивом ассоциативных массивов в формате $arr['wrapper']['option'] = $value.Замечание:
Начиная с PHP 5.3.0, функция stream_context_set_default() может быть использована для установки контекста по умолчанию.
Возвращаемые значения
Ресурс resource контекста потока.
Примеры
Пример #1 Пример использования stream_context_get_default()
<?php
$default_opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: en\r\n" .
"Cookie: foo=bar",
'proxy'=>"tcp://10.54.1.39:8000"
)
);
$alternate_opts = array(
'http'=>array(
'method'=>"POST",
'header'=>"Content-type: application/x-www-form-urlencoded\r\n" .
"Content-length: " . strlen("baz=bomb"),
'content'=>"baz=bomb"
)
);
$default = stream_context_get_default($default_opts);
$alternate = stream_context_create($alternate_opts);
/* Отправляет обычный GET запрос на прокси-сервер 10.54.1.39
* Для www.example.com используются опции контекста, указанные в $default_opts
*/
readfile('http://www.example.com');
/* Отправляет POST запрос напрямую к www.example.com
* Используемые опции контекста определены в $alternate_opts
*/
readfile('http://www.example.com', false, $alternate);
?>
Смотрите также
- stream_context_create() - Создаёт контекст потока
- Список поддерживаемых обёрток с опциями контекста (Поддерживаемые протоколы и обработчики (wrappers)).
- PHP Руководство
- Функции по категориям
- Индекс функций
- Справочник функций
- Другие базовые расширения
- Потоки
- set_socket_blocking
- stream_bucket_append
- stream_bucket_make_writeable
- stream_bucket_new
- stream_bucket_prepend
- stream_context_create
- stream_context_get_default
- stream_context_get_options
- stream_context_get_params
- stream_context_set_default
- stream_context_set_option
- stream_context_set_params
- stream_copy_to_stream
- stream_encoding
- stream_filter_append
- stream_filter_prepend
- stream_filter_register
- stream_filter_remove
- stream_get_contents
- stream_get_filters
- stream_get_line
- stream_get_meta_data
- stream_get_transports
- stream_get_wrappers
- stream_is_local
- stream_notification_callback
- stream_register_wrapper
- stream_resolve_include_path
- stream_select
- stream_set_blocking
- stream_set_chunk_size
- stream_set_read_buffer
- stream_set_timeout
- stream_set_write_buffer
- stream_socket_accept
- stream_socket_client
- stream_socket_enable_crypto
- stream_socket_get_name
- stream_socket_pair
- stream_socket_recvfrom
- stream_socket_sendto
- stream_socket_server
- stream_socket_shutdown
- stream_supports_lock
- stream_wrapper_register
- stream_wrapper_restore
- stream_wrapper_unregister
Коментарии
If you are using stream_context_get_default() and are still finding that some functions do not work, make sure that they are not based upon the libxml functions (DOM, SimpleXML and XSLT). These require their own context.
You can easily set them using the following code ...
<?php
// Define the default, system-wide context.
$r_default_context = stream_context_get_default
(
array
(
'http' => array
( // All HTTP requests are passed through the local NTLM proxy server on port 8080.
'proxy' => 'tcp://127.0.0.1:8080',
'request_fulluri' => True,
),
)
);
// Though we said system wide, some extensions need a little coaxing.
libxml_set_streams_context($r_default_context);
?>