2013-10-10 69 views
0

我已經json_decoded我的PayPal REST API響應,並得到了這一點:解析貝寶REST API響應

["body"]=> object(stdClass)#4 (8) { 

    ["id"]=> string(28) "PAY-66D616332R6551639KJLSMVQ" 
    ["create_time"]=> string(20) "2013-10-10T22:12:38Z" 
    ["update_time"]=> string(20) "2013-10-10T22:12:39Z" 
    ["state"]=> string(7) "created" 
    ["intent"]=> string(4) "sale" 
    ["payer"]=> object(stdClass)#5 (2) { 
     ["payment_method"]=> string(6) "paypal" 
     ["payer_info"]=> object(stdClass)#6 (0) {} 
    } 
    ["transactions"]=> array(1) { 
     [0]=> object(stdClass)#7 (3) { 
      ["amount"]=> object(stdClass)#8 (3) { 
       ["total"]=> string(6) "500.85" 
       ["currency"]=> string(3) "USD" 
       ["details"]=> object(stdClass)#9 (2) { 
        ["subtotal"]=> string(6) "460.90" 
        ["shipping"]=> string(5) "39.95" 
       } 
      } 
      ["description"]=> string(43) "Mike and Maureen Photography - Order ID #10" 
      ["item_list"]=> object(stdClass)#10 (1) { 
       ["items"]=> array(2) { 
        [0]=> object(stdClass)#11 (5) { 
         ["name"]=> string(48) "The Bean-8" x 10" - floating frame - black frame" 
         ["sku"]=> string(7) "20 - 13" 
         ["price"]=> string(6) "160.95" 
         ["currency"]=> string(3) "USD" 
         ["quantity"]=> string(1) "1" 
        } 
        [1]=> object(stdClass)#12 (5) { 
         ["name"]=> string(62) "40 Steps and a View-36" x 48" - 0.75" thin gallery wrap canvas" 
         ["sku"]=> string(5) "7 - 6" 
         ["price"]=> string(6) "299.95" 
         ["currency"]=> string(3) "USD" 
         ["quantity"]=> string(1) "1" 
        } 
       } 
      } 
     } 
    } 
    ["links"]=> array(3) { 
     [0]=> object(stdClass)#13 (3) { 
      ["href"]=> string(79) "https://api.sandbox.paypal.com/v1/payments/payment/PAY-66D616332R6551639KJLSMVQ" 
      ["rel"]=> string(4) "self" 
      ["method"]=> string(3) "GET" 
     } 
     [1]=> object(stdClass)#14 (3) { 
      ["href"]=> string(94) "https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-1XB37931V5368954G" 
      ["rel"]=> string(12) "approval_url" 
      ["method"]=> string(8) "REDIRECT" 
     } 
     [2]=> object(stdClass)#15 (3) { 
      ["href"]=> string(87) "https://api.sandbox.paypal.com/v1/payments/payment/PAY-66D616332R6551639KJLSMVQ/execute" 
      ["rel"]=> string(7) "execute" 
      ["method"]=> string(4) "POST" 
     } 
    } 
} 

我試圖檢查「狀態」的價值,但我似乎無法弄清楚如何引用值。我曾嘗試:($result正是數組所在的變量)的工作

$result['body']['state'] 
$result['state'] 
$body['state'] 

無,所以任何人都可以告訴我如何引用該搞糟有重點「國家」?我通常對PHP很好,但由於某種原因,我無法弄清楚這一點。

感謝您的幫助。

編輯

我已經格式化,因此它更容易準備的反應,但我堅持中選擇[1] href的值。如果我以前面的例子爲基礎,我會使用

$ result ['body'] - >鏈接,但是如何將它過濾到[1]中的特定href?

回答

1

格式不起作用,但它看起來像$result['body']->state會讓你找到你想要的。

您與第一次嘗試的距離最近,$result['body']['state'],但$result['body']是一個對象,因此您需要使用->來訪問其屬性。

+0

謝謝,只需要另一雙眼睛來幫助我。 – McCoy

+0

我對響應進行了格式化,使其更易於閱讀,您是否可以幫助我獲得在鏈接數組中引用[1] href的正確語法? – McCoy

+0

'$ result ['body'] - > links [1] - > href' ...但你明白**爲什麼**? –