PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

stream_context_get_options> <stream_context_create
Last updated: Fri, 03 Oct 2008

view this page in

stream_context_get_default

(PHP 5 >= 5.1.0)

stream_context_get_defaultデフォルトのストリームコンテキストを取得する

説明

resource stream_context_get_default ([ array $options ] )

fopen()file_get_contents() のような) ファイル操作関数がコンテキストパラメータなしでコールされた場合に使用される デフォルトのストリームコンテキストを返します。デフォルトコンテキストに 関するオプションは、stream_context_create() と同じ 構文で任意に指定することが可能です。

options は、 $arr['wrapper']['option'] = $value のような形式の、連想配列の連想配列である必要があります。

注意: PHP 5.3.0 以降では、stream_context_set_default() 関数でデフォルトのコンテキストを設定することが可能です。

例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);

/* www.example.com に対する通常の GET リクエストを、プロキシサーバ 10.54.1.39
 * に対して送信します。コンテキストオプション $default_opts を使用します。
 */
readfile('http://www.example.com');

/* POST リクエストを、直接 www.example.com に送信します。
 * コンテキストオプション $alternate_opts を使用します。
 */
readfile('http://www.example.com'false$alternate);

?>

stream_context_create() および サポートされるラッパ(サポートされるプロトコル/ラッパー) も参照ください。



add a note add a note User Contributed Notes
stream_context_get_default
RQuadling at GMail dot com
02-Jan-2007 01:02
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);
?>

See http://rquadling.php1h.com/php_ntlm.php for more info (sorry for the ads).

stream_context_get_options> <stream_context_create
Last updated: Fri, 03 Oct 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites