本帖最后由 xeqtrl982 于 2010-05-11 22:39:25 编辑

解决方案 »

  1.   


    $json = '{"orderData":{"date":"2010-05-11T01:11:33-07:00","receipt":"xxxxx","promo":{"@nil":"true"},"pmtType":"xxxxx","txnType":"SALE","item":"1","amount":"47.00","site":"seolv","affi":"xxx","country":"US","state":"xx","lastName":"xxx","firstName":"xxx","currency":"USD","email":"xxxxx.com","zip":"xxxxx","rebillAmount":"47.00","processedPayments":"1","futurePayments":"98","nextPaymentDate":"2010-06-11T00:00:00-07:00","status":"ACTIVE","accountAmount":"16.99","role":"AFFILIATE"}}';
    $result = json_decode($json, true);
    //echo "<pre>";
    //print_r($result);
    //echo "</pre>";
    echo $result['orderData']['firstName'];//xxx 
      

  2.   

    谢楼上了,那$json是一个由多条json组成的记录呢,如何进行循环
     
      

  3.   

    1.$result = json_decode($json, true);2.获取json记录数,而后循环count($result['orderData'])

    orderData的第2条记录的firstname则用
    $result['orderData'][1]['firstName']来表示!
      

  4.   

    楼主要学会自己调试啊,除了echo还可以print_r,还可以var_dump啊,自己输出一下整个数组就很容易知道结构了!
    $json = '{"orderData":{"date":"2010-05-11T01:11:33-07:00","receipt":"xxxxx","promo":{"@nil":"true"},"pmtType":"xxxxx","txnType":"SALE","item":"1","amount":"47.00","site":"seolv","affi":"xxx","country":"US","state":"xx","lastName":"xxx","firstName":"xxx","currency":"USD","email":"xxxxx.com","zip":"xxxxx","rebillAmount":"47.00","processedPayments":"1","futurePayments":"98","nextPaymentDate":"2010-06-11T00:00:00-07:00","status":"ACTIVE","accountAmount":"16.99","role":"AFFILIATE"}}';
    $arr = json_decode($json,true);
    print_r($arr);
      

  5.   

    $rs = json_decode($s);
    echo $rs->orderData->firstName;完全可以