首页 > 解决方案 > 我无法回显 PHP cURL 响应的第一个索引

问题描述

我正在使用我编写的这个小 PHP 函数来调用我的主数据库:

$db_request = curl_init(DB_ROOT.'/action/register.php');
curl_setopt($db_request, CURLOPT_HEADER, 0);
curl_setopt($db_request, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($db_request, CURLOPT_POSTFIELDS, http_build_query($variables));
$db_response = curl_exec($db_request);
curl_close ($db_request);
        
parse_str($db_response, $information);

在 register.php 上,我使用以下内容进行响应:

echo http_build_query(array(
    'test1'=>'value1',
    'test2'=>'value2',
    'test3'=>'value3'
));

当尝试检索任何给定响应的第一个索引时,我的问题就出现了。我可以使用var_dump($information)并将收到array(3) { ["test1"]=> string(6) "value1" ["test2"]=> string(6) "value2" ["test3"]=> string(6) "value3" }. 但是,当我尝试 时echo $information['test1'],我收到: Notice: Undefined index: test1 in...

回显第一个索引以外的任何内容都不会给我这个问题。

有人有想法吗?

标签: phpcurl

解决方案


parse_str返回类型为空

更新您的代码

parse_str($db_response, $information);

推荐阅读