-2

我正在使用 curl 将数据发布到 drupal 服务器上的 json 文件。我有这个工作,它返回一个像这样的字符串:

{
  "result":"success",
  "user":{
    "uid":"15",
    "theme":"",
    "signature":"",
    "signature_format":"plain_text",
    "created":"1335991710",
    "access":"1363715947",
    "login":1363716262,
    "status":"1",
    "timezone":"America/Los_Angeles",
    "language":"",
    "picture":"0",
    "data":false,
    "uuid":"89847add-54c8-c4b4-5dfc-bddc96e99919",
    "roles":{
      "2":"authenticated user",
      "4":"dOP staff"
    },
    "field_user_client":{
      "und":[
        {
          "nid":"17740"
        }
      ]
    }
  }
}

我正在尝试获取resultjson 字符串的一部分。我尝试将字符串转换为对象,但这没有用。我尝试了以下方法:

<?php
$curlResult = curl_exec($ch);
echo $curlResult->result; //fails
?>

我需要做什么才能完成这项工作?

4

2 回答 2

1

CURL 真的需要吗?这应该可以正常工作:

<?
$resArray = json_decode($ch, true);
$result = $resArray['result'];
?>
于 2013-03-19T18:17:34.710 回答
1

我对 Curl 不太了解,但它看起来像一个 JSON 数组。您可能需要使用 php 函数json_decode()。尝试类似:

<?php
$curlResult = curl_exec($ch);
$array = json_decode($curlResult->result);
echo $array->result;
?>

如果您需要将数组放回 JSON,还有json_encode() 。

于 2013-03-19T18:18:47.690 回答