php里的file_get_contents 第3个参数的问题

2025-02-24 20:23:46
推荐回答(4个)
回答1:

这个context是指“流中的内容”。
我们知道OS操作都由输入输出流控制。
在开启一些特殊文件(unix下任何东西都是文件),比如设备,键盘、屏幕、网络文件、串口
需要输入流进行一些操作。这时候就用stream_context_create制作一份“输入内容”。

实际主要用途,看到大多数实例也是用来进行HTTP操作(实际用途远不局限于这一种功能)
把HTTP的报头Header的内容作为输入流的内容,这种方式开启文件后获得服务返回的内容。
原理上还是对系统文件的输入输出流操作。

$opts = array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: en\r\n" .
"Cookie: foo=bar\r\n"
)
);
$context = stream_context_create($opts);
//提交语言编码和cookie,获得一个网址的响应内容
$file = file_get_contents('http://www.example.com/', false, $context);
?>

希望不会悲剧,说了半天被看不懂

回答2:

可选。规定文件句柄的环境。
context 是一套可以修改流的行为的选项。若使用 null,则忽略。
对 context 参数的支持是 PHP 5.0.0 添加的。

回答3:

具体不清楚
可以参考例子:
http://docs.php.net/manual/zh/function.file-get-contents.php#68636

回答4:

没什么用途, 可以忽略,设置NULL