如何从cURL命令中提取数据/结果以使用PHP显示输出?

时间:2014-05-14 10:03:21

标签: php post curl get

首先,我很熟悉PHP和cURL

从命令:

curl -i 'http://xxx:xxx/v2.0/tokens' -X POST -H "Content-Type: application/json" -H "Accept: application/json" -d '{"auth": {"tenantName": "xxx", "passwordCredentials": {"username": "admin", "password": "xxx"}}}'

我想使用POST / GET和PHP生成此命令的结果。我有一个apache服务器和工作URL。

我只是不知道如何创建一个可以使用PHP获取代码并使用PHP生成输出到空页面的代码。

我一直在寻找例子,我知道你必须使用以下一些:

<?php
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "");
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, '');
curl_setopt($ch, CURLOPT_POSTFIELDS, '');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

curl_exec($ch);

curl_close($ch);
?>

我只是不知道如何将cURL命令中的正确标志附加到PHP代码,可能缺少一些重要的事情以及包装代码。

如果我无法解释我的问题,请提前致谢并抱歉。

** ***编辑:* ****

所以我制作了一个符合我需要的代码,它在PHP页面上从cURL命令生成一个原始结果。 这是代码:

<?php
$request_body = '{"auth": {"tenantName": "xxx", "passwordCredentials": {"username": "admin", "password": "xxx"}}}';
$ch = curl_init('http://xxx:xxx/v2.0/tokens');
        curl_setopt($ch, CURLOPT_POSTFIELDS, $request_body);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
        curl_setopt($ch, CURLOPT_HEADER, true); 
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        $response = curl_exec($ch);
var_dump($response);
?>

现在问我是否可以操作输出以更好的方式显示,现在它只是一个大字符串,某种形式的JSON漂亮打印将是惊人的。

2 个答案:

答案 0 :(得分:0)

详细了解curl exec(http://www.php.net/manual/en/function.curl-exec.php

<?php
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_URL, "");
    curl_setopt($ch, CURLOPT_HEADER, true);
    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, '');
    curl_setopt($ch, CURLOPT_POSTFIELDS, '');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    $data = curl_exec($ch);

    curl_close($ch); 
print $data;

    ?>

答案 1 :(得分:0)

从curl_exec命令返回数据。

虽然在另一个主题上,也许Uploading files to Zoho API with PHP Curl,我最近在这里发布的一个问题包含了一个Curl类示例,对您有所帮助。

另外,我建议您阅读PHP {curm}方法manual pages,例如 curl_exec page - 评论部分通常包含实施建议。