0

Paypal REST API 応答を json_decode したところ、次のようになりました。

["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']->link ですが、[1] の特定の href に到達するにはどうすればよいですか?

4

1 に答える 1

1

フォーマットは役に立ちませんが、$result['body']->state探しているものが得られるようです。

最初の試行で最も近かったのですが$result['body']['state']$result['body']はオブジェクトであるため、 を使用->してそのプロパティにアクセスする必要があります。

于 2013-10-10T21:50:43.260 に答える