PHP streams功能中的两个关键概念是context options and parameters。 «选项»和«参数»有什么区别?
Documentation about the former相当简单。似乎选项是协议特定的设置,例如如果在MongoDB中使用HTTP或“在插入文档时调用回调函数”,则“方法”(get,post,put ...)。
那么什么是参数? stream_context_set_params()
manual page包含对支持的参数的稀疏引用,即“通知”和“选项”(选项??)。 Context parameters页面只提到“通知”,好像他们对PHP / 4.3.0发布时的未来有很好的计划,但它们从未开花过。
答案 0 :(得分:2)
<强>更新强>
我做了一些研究,发现代码真的很旧,它是由commit e1d0a1479
引入的,并且从那时起保持或多或少不变。 (2003年4月10日)
此代码的作者是 Wez Furlong 。我会问他,因为我担心没有人能提供更好的答案。 (在github上找到他的电子邮件地址)
IMHO参数(there is only one atm)可用于所有上下文包装器,其中选项特定于某种类型的包装器。
实际上你可以用stream_context_set_params()
设置两个不同的参数:notification
(如上所述)和(这可能是令人惊讶的)options
这是一个关联包含可以使用stream_context_set_options()
设置的选项的数组。
看起来stream_context_set_params()
函数是一种更通用的尝试,但是我仍然没有完全获得该概念的优势..需要查看代码和提交历史。< / p>