我对这个网站来说是全新的,所以如果我的帖子格式不正确,我很抱歉。
无论如何,我有一个相当简单的问题。我从"请求主体" -array-thingy中提取值,并且通过使用这4行代码获得了我需要的大部分内容:
$payment_id = strval($callback_json->id);
$order_id = strval($callback_json->order_id);
$currency = strval($callback_json->currency);
$card_brand = strval($callback_json->metadata->brand);
我现在的问题是,在尝试获得"金额时,我已经耗尽了人才。值似乎是一个"子变量"到"操作"。
我尝试过这样做,但他们都没有工作:
$amount_total = strval($callback_json->operations[amount]);
$amount_total = strval($callback_json->operations->amount);
所以现在我的问题是;如何格式化此行以获得值" 69500"。
我真的希望有人可以帮助我! : - )
{
"id":9256797,
"order_id":"23322651466",
"accepted":true,
"type":"Payment",
"text_on_statement":null,
"branding_id":null,
"variables":{},
"currency":"DKK",
"state":"new",
"operations":[{
"id":1,
"type":"authorize",
"amount":69500,
"pending":false,
"qp_status_code":"20000",
"qp_status_msg":"Approved",
"aq_status_code":"20000",
"aq_status_msg":"Approved",
"data":{},
"callback_url":"http://requestb.in/105y8k81",
"callback_success":null,
"callback_response_code":null,
"created_at":"2015-12-05T12:40:40+00:00"
}],
"metadata":{
"type":"card",
"brand":"visa",
"last4":"0008",
"exp_month":11,
"exp_year":2016,
"country":"DNK",
"is_3d_secure":false,
"hash":"6f976a4e388928beb4ad3OrQHCS2LDGNAFZVK3i54p6q8heV0RRci",
"number":null,
"customer_ip":"2.110.77.40",
"customer_country":"DK",
"fraud_suspected":false,
"fraud_remarks":[]
}
答案 0 :(得分:1)
使用
$amount_total = strval($callback_json->operations[0]->amount);
因为json中的[
是数组的开放标记。
{'foo':[{'bar':"A"},{'bar':"B"}]}
$val->foo[0]->bar; # A
$val->foo[1]->bar; # B
希望有所帮助。