带有PECL_HTTP的http_parse_headers

mua*_*aaz 8 php apache configuration http

我想使用http_parse_headers所以,我已经安装了依赖pecl_http(2.4.3/2.2.5)和调用http_parse_headers函数没有成功.

function_exists() 总是失败有什么我在这里失踪的吗?

我正在使用

CentOS 6.7(最终版)

Apache 2.4.16

PHP 5.6

更新1

这是守则!

<?PHP
    if(function_exists("http_parse_headers")) echo 'Function Exists';
    else echo 'Function Not Exists';
?>
Run Code Online (Sandbox Code Playgroud)

更新2

这里是 php.ini

......
......
extension=pdo.so
extension=pdo_sqlite.so
extension="memcache.so"
extension="raphf.so"
extension="propro.so"
extension="http.so"
extension=pdo_mysql.so
Run Code Online (Sandbox Code Playgroud)

更新3

这是输出 phpinfo()

phpinfo()的输出

Ric*_*ote 5

PHP文档不正确.该库的版本2与php.net中列出的函数不兼容.

阅读新文档,您现在必须使用HTTP :: parse:

http\Header::parse($yourHeaders)
Run Code Online (Sandbox Code Playgroud)


mua*_*aaz 1

好吧,经过长时间的搜索我发现

库的版本 2与版本 1PECL_HTTP完全不兼容版本 2中不存在任何 HTTP 函数

PHP.net上的文档中没有任何地方说明这一点。

顺便说一句,版本 2是一个完全 OOP 接口,并且不再支持文档中列出的所有函数。

如果您正在寻找功能性 API,请使用版本 1

所以,按照里卡多的建议,你需要使用

http\Header::parse($yourHeaders);
Run Code Online (Sandbox Code Playgroud)

解析标头和

new http\Cookie($yourCookies);
Run Code Online (Sandbox Code Playgroud)

解析cookie等