【问题标题】:Get JSON Data with PHP cURL使用 PHP cURL 获取 JSON 数据
【发布时间】:2016-09-21 15:19:09
【问题描述】:

我有一个输出一些 JSON 的简单脚本。我正在尝试使用另一个 PHP 脚本检索变量中的 JSON 内容,但是当我执行 var_dump() 时,我得到的是 NULL 而不是 JSON 数据。

这是 JSON。唯一的输出是:{"ProductID":"1000096","ProductStyleID":"1001029","ProductCategoryID":"1000004"}

json.php

$arr['ProductID'] = "1000096";
$arr['ProductStyleID'] = "1001029";
$arr['ProductCategoryID'] = "1000004";

$json_arr = json_encode($arr);
echo $json_arr;

这是 cURL 脚本,现在输出 NULL:

curl.php

$curl = curl_init();
curl_setopt ($curl, CURLOPT_URL, "/json.php");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);

$result = curl_exec ($curl);
curl_close ($curl);
var_dump(json_decode($result, true));

如何检索在 json.php 脚本中回显的 JSON?

【问题讨论】:

  • 提供完整路径而不是"/json.php"
  • 嗯,这很快。不知道我必须使用完整的 URL,因为我习惯于使用部分路径。非常感谢,伙计们。 :)
  • @GTSJoe 很高兴为您提供帮助。:):)
  • curl 在服务器上运行。它不知道你的浏览器在做什么。

标签: php json curl


【解决方案1】:

如果您看到一个基本的 CURL 示例:- http://php.net/manual/en/curl.examples-basic.php

你会知道,而不是:-

"/json.php"

您需要提供完整路径,例如:-

(http://...) 或 (https://...) 用于您的文件(基于您的服务器)

注意:- 您的代码的其余部分似乎非常好。谢谢

【讨论】:

    【解决方案2】:

    这是获取数据的 URL:-

    $url="https://.../api.php?action";
    

    使用 cURL:

    //  Initiate curl
    $cuh = curl_init();
    // Disable SSL verification
    curl_setopt($cuh, CURLOPT_SSL_VERIFYPEER, false);
    // Will return the response, if false it print the response
    curl_setopt($cuh, CURLOPT_RETURNTRANSFER, true);
    // Set the url
    curl_setopt($cuh, CURLOPT_URL,$url);
    // Execute
    $result=curl_exec($cuh);
    // Closing
    curl_close($cuh);
    
    // Will dump a beauty json :3
    var_dump(json_decode($result, true));
    

    【讨论】:

    • 对 OP 没什么帮助。远离实际答案
    猜你喜欢
    • 2018-02-11
    • 2021-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多