Haoran Blog  -  Stay hungry  Stay foolish

PHP-( file_get_contents)

今天用PHP做RSS引入的时候 遇到了一个问题,经过jian的帮助最终解决,用到了file_get_contents的方法,下面记录一下。(转发自PHP.NET)

file_get_contents

(PHP 4 >= 4.3.0, PHP 5)

file_get_contents — 将整个文件读入一个字符串

reject note 说明

string file_get_contents ( string $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 编码。

 

reject note 参数

 

filename
要读取的文件的名称。
use_include_path

Note:

As of PHP 5 the FILE_USE_INCLUDE_PATH can be used to trigger include path search.

 

context
A valid context resource created with stream_context_create(). 如果你不需要自定义 context,可以用 NULL 来忽略。
offset
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.
maxlen
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.

 

reject note 返回值

The function returns the read data 或者在失败时返回 FALSE.

reject note 错误/异常

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.

reject note 范例

 

Example #1 Get and output the source of the homepage of a website

<?php
$homepage = file_get_contents('http://www.example.com/');
echo $homepage;
?>

Example #2 Searching within the include_path

<?php
// <= PHP 5
$file = file_get_contents('./people.txt', true);
// > PHP 5
$file = file_get_contents('./people.txt', FILE_USE_INCLUDE_PATH);
?>

Example #3 Reading a section of a file

<?php
// Read 14 characters starting from the 21st character
$section = file_get_contents('./people.txt', NULL, NULL, 20, 14);
var_dump($section);
?>

以上例程的输出类似于:

string(14) "lle Bjori Ro"

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

发表评论

电子邮件地址不会被公开。 必填项已用*标注