stream_context_create
(PHP 4 >= 4.3.0, PHP 5)
stream_context_create — 创建资源流上下文
说明
$options
[,
array $params
]] )
创建并返回一个资源流上下文,该资源流中包含了 options
中提前设定的所有参数的值。
参数
-
必须是一个二维关联数组,格式如下:$arr['wrapper']['option'] = $value 。
默认是一个空数组。
-
必须是 $arr['parameter'] = $value 格式的关联数组。 请参考 context parameters 里的标准资源流参数列表。
options
params
返回值
上下文资源流,类型为 resource 。
Example #1 使用 stream_context_create()
<?php
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: en\r\n" .
"Cookie: foo=bar\r\n"
)
);
$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);
?>
file_get_contents
(PHP 4 >= 4.3.0, PHP 5)
file_get_contents — 将整个文件读入一个字符串
说明
$filename
[,
bool $use_include_path
= false [,
resource $context
[,
int $offset
= -1 [,
int $maxlen
]]]] )
和 file() 一样,只除了 file_get_contents() 把文件读入一个字符串。将在参数 offset
所指定的位置开始读取长度为 maxlen
的内容。如果失败,file_get_contents()将返回 FALSE
。
file_get_contents()函数是用来将文件的内容读入到一个字符串中的首选方法。如果操作系统支持还会使用内存映射技术来增强性能。
Note:
如果要打开有特殊字符的 URL (比如说有空格),就需要使用 urlencode() 进行 URL 编码。
参数
-
要读取的文件的名称。
-
Note:
As of PHP 5 the
FILE_USE_INCLUDE_PATH
can be used to trigger include path search. -
A valid context resource created with stream_context_create(). 如果你不需要自定义 context,可以用
NULL
来忽略。 -
The offset where the reading starts on the original stream.
Seeking (
offset
) is not supported with remote files. Attempting to seek on non-local files may work with small offsets, but this is unpredictable because it works on the buffered stream. -
Maximum length of data read. The default is to read until end of file is reached. Note that this parameter is applied to the stream processed by the filters.
filename
use_include_path
context
offset
maxlen
返回值
The function returns the read data 或者在失败时返回 FALSE
.
错误/异常
An E_WARNING
level error is generated if either maxlength
is less than zero, or if seeking to the specified offset
in the stream fails.
Example #4 Using stream contexts
<?php
// Create a stream
$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: en\r\n" .
"Cookie: foo=bar\r\n"
)
);
$context = stream_context_create($opts);
// Open the file using the HTTP headers set above
$file = file_get_contents('http://www.example.com/', false, $context);
?>