如何在没有PECL_http或CURL的情况下在PHP中执行httpget请求

如何在没有PECL_http或CURL的情况下在PHP中执行httpget请求,php,http,get,Php,Http,Get,我正在建立网站&域宿主(1和1)只提供基本的PHP5.4(没有像PECL_HTTP或CURL等外部库,没有安装库) 我可以将PHP类文件添加到我的代码中。我正在尝试对此URL执行Http/Https访问 $url=”https://www.googleapis.com/freebase/v1/search?query=chocolate&count=2"; 我试过Snoopy,至少有6个不同的类库来自PHPClasses,它们都没有返回任何东西(结果为空),我不知道为什么?但它们都返回页面结果

我正在建立网站&域宿主(1和1)只提供基本的PHP5.4(没有像PECL_HTTP或CURL等外部库,没有安装库)

我可以将PHP类文件添加到我的代码中。我正在尝试对此URL执行Http/Https访问
$url=”https://www.googleapis.com/freebase/v1/search?query=chocolate&count=2";

我试过Snoopy,至少有6个不同的类库来自PHPClasses,它们都没有返回任何东西(结果为空),我不知道为什么?但它们都返回页面结果


有谁能推荐一个PHP类库,我可以包括它(而不是任何已安装的类库),它可以执行简单的Http/Https获取和返回结果

如果您只是想要这个“文件”的内容,您可以使用它(参见第一个示例)。请参阅@okekeemmanuelouchukwu关于如何发送头的评论。

如果您只想使用此“文件”的内容(请参阅第一个示例)。请参阅@okekeemmanuelouchukwu关于如何发送页眉的评论。

是否正在查找页面输出

您可能已经发现,
include something.php?foo=bar
不起作用,因为php实际上查找以
?for=bar
结尾的文件,但是您可以像这样设置所有get变量:

function getRequest($url, $data) {
    foreach ($data as $key => $value) {
        $_GET[$key] = $value;
    }
    include $url;
}

然而,在“完整路径”(不能想到正确的名称)上获取变量是有效的,例如
include'http://something.com/foo.php?bar=baz“
。您可以在这里找到“变量传递”的示例,并在非本地系统上获取变量。

您正在查找页面输出吗

您可能已经发现,
include something.php?foo=bar
不起作用,因为php实际上查找以
?for=bar
结尾的文件,但是您可以像这样设置所有get变量:

function getRequest($url, $data) {
    foreach ($data as $key => $value) {
        $_GET[$key] = $value;
    }
    include $url;
}

然而,在“完整路径”(不能想到正确的名称)上获取变量是有效的,例如
include'http://something.com/foo.php?bar=baz“
。您可以在这里找到“变量传递”的示例,并在非本地系统上获取变量。

完整http功能(包括标头等)的最佳选择是将文件函数与流上下文一起使用

发件人:


完整的http功能(包括标题等)的最佳选择是在流上下文中使用文件函数

发件人:


file\u-get\u-contents
不是为你做这项工作吗?难道
file\u-get\u-contents
不是为你做这项工作吗?实际上你可以发送标题,你只需要在
file\u-get\u-contents()
函数中提供
context
参数即可,您只需在
文件\u get\u contents()
函数@prehfeldt中提供
上下文
参数