Heim  >  Artikel  >  Backend-Entwicklung  >  Probleme mit der JSON-Datenverarbeitung in PHP

Probleme mit der JSON-Datenverarbeitung in PHP

WBOY
WBOYOriginal
2016-10-19 10:40:521138Durchsuche

Das von der Weidian-API übertragene Bestellinformationsformat ist wie folgt:

<code>content=
{"message":{
"seller_name":"天天向上","total":"0.10",
"express_fee":"0.00",
"buyer_identity_id":"0",
"f_phone":"",
"fx_fee_value":"0.00",
"express_type":null,
"express_note":"",
"modify_price_enable":"1",
"express":null,
"order_id":"774780580411340",
"order_type_des":"担保交易",
"confirm_expire":"",
"group_status":-1,
"send_time":null,
"weixin":"",
"is_close":0,
"argue_flag":0,
"total_fee":"0.00",
"status_desc":"未付款",
"quantity":"1",
"note":"",
"trade_no":null,
"sk":null,
"status":"unpay",
"discount_info":"无优惠",
"seller_phone":"18512345678",
"express_fee_num":"0.00",
"pay_time":"",
"discount_amount":"0",
"discount":null,
"real_income_price":"",
"price":"0.10",
"buyer_info":{
"buyer_id":"1024799624",
"region":"禹会区",
"phone":"15923808761",
"post":null,
"address":"安徽 蚌埠市 禹会区 城区回来了",
"name":"路过",
"self_address":"城区回来了",
"province":"安徽",
"city":"蚌埠"
},
"items":
[{
"is_delivered":0,
"img":"http://wd.geilicdn.com/vshop1024697422-1476758240117-CE6F5-s1.jpg?w=110&h=110&cp=1",
"total_price":"0.10",
"merchant_code":"",
"deliver_id":"0",
"url":"http://weidian.com/i/1969988669",
"deliver_status_desc":"",
"price":"0.10",
"sku_merchant_code":"",
"item_name":"测试商品",
"item_id":"1969988669",
"fx_fee_rate":"0%",
"quantity":"1",
"can_deliver":1,
"refund_info":{"refund_no":"",
"refund_fee":"0",
"refund_status_str":"",
"item_id":"1969988669",
"item_sku_id":"0",
"refund_status":"",
"refund_express_fee":"0",
"can_refund":"0",
"refund_item_fee":"0",
"refund_status_desc":""},
"sku_id":"0","sku_title":null
}],
"user_phone":"15912345678",
"status2":"未付款",
"f_seller_id":"",
"seller_id":"1024697422",
"add_time":"2016-10-18 13:25:54",
"refund_info":
{
"buyer_refund_fee":null,
"refund_time":null},
"return_code":"",
"express_no":null,
"f_shop_name":"",
"original_total_price":"",
"order_type":"3"
},
"type":"weidian.order.non_payment"
}&public={"x_forwarded_for":null}
</code>

Sie müssen die Daten eines oder mehrerer Felder abrufen. Hier gibt es zwei JSON-Informationen.

Wenn ja

<code>{"seller_name":"天天向上","total":"0.10",
"express_fee":"0.00",
"buyer_identity_id":"0",
"f_phone":"",
"fx_fee_value":"0.00",
"express_type":null,
"express_note":"",
"modify_price_enable":"1",
"express":null,
"order_id":"774780580411340"}
</code>

Für dieses Format sollte der folgende Code ausreichen

<code><?php
$input = file_get_contents("php://input"); //接收POST数据
$arr=json_decode($input, true); 
file_put_contents("test.txt",$arr[order_id], FILE_APPEND);//以将order_id追加如文本文档为例
?></code>

Antwortinhalt:

Das von der Weidian-API übertragene Bestellinformationsformat ist wie folgt:

<code>content=
{"message":{
"seller_name":"天天向上","total":"0.10",
"express_fee":"0.00",
"buyer_identity_id":"0",
"f_phone":"",
"fx_fee_value":"0.00",
"express_type":null,
"express_note":"",
"modify_price_enable":"1",
"express":null,
"order_id":"774780580411340",
"order_type_des":"担保交易",
"confirm_expire":"",
"group_status":-1,
"send_time":null,
"weixin":"",
"is_close":0,
"argue_flag":0,
"total_fee":"0.00",
"status_desc":"未付款",
"quantity":"1",
"note":"",
"trade_no":null,
"sk":null,
"status":"unpay",
"discount_info":"无优惠",
"seller_phone":"18512345678",
"express_fee_num":"0.00",
"pay_time":"",
"discount_amount":"0",
"discount":null,
"real_income_price":"",
"price":"0.10",
"buyer_info":{
"buyer_id":"1024799624",
"region":"禹会区",
"phone":"15923808761",
"post":null,
"address":"安徽 蚌埠市 禹会区 城区回来了",
"name":"路过",
"self_address":"城区回来了",
"province":"安徽",
"city":"蚌埠"
},
"items":
[{
"is_delivered":0,
"img":"http://wd.geilicdn.com/vshop1024697422-1476758240117-CE6F5-s1.jpg?w=110&h=110&cp=1",
"total_price":"0.10",
"merchant_code":"",
"deliver_id":"0",
"url":"http://weidian.com/i/1969988669",
"deliver_status_desc":"",
"price":"0.10",
"sku_merchant_code":"",
"item_name":"测试商品",
"item_id":"1969988669",
"fx_fee_rate":"0%",
"quantity":"1",
"can_deliver":1,
"refund_info":{"refund_no":"",
"refund_fee":"0",
"refund_status_str":"",
"item_id":"1969988669",
"item_sku_id":"0",
"refund_status":"",
"refund_express_fee":"0",
"can_refund":"0",
"refund_item_fee":"0",
"refund_status_desc":""},
"sku_id":"0","sku_title":null
}],
"user_phone":"15912345678",
"status2":"未付款",
"f_seller_id":"",
"seller_id":"1024697422",
"add_time":"2016-10-18 13:25:54",
"refund_info":
{
"buyer_refund_fee":null,
"refund_time":null},
"return_code":"",
"express_no":null,
"f_shop_name":"",
"original_total_price":"",
"order_type":"3"
},
"type":"weidian.order.non_payment"
}&public={"x_forwarded_for":null}
</code>

Sie müssen die Daten eines oder mehrerer Felder abrufen. Hier gibt es zwei JSON-Informationen.

Wenn ja

<code>{"seller_name":"天天向上","total":"0.10",
"express_fee":"0.00",
"buyer_identity_id":"0",
"f_phone":"",
"fx_fee_value":"0.00",
"express_type":null,
"express_note":"",
"modify_price_enable":"1",
"express":null,
"order_id":"774780580411340"}
</code>

Für dieses Format sollte der folgende Code ausreichen

<code><?php
$input = file_get_contents("php://input"); //接收POST数据
$arr=json_decode($input, true); 
file_put_contents("test.txt",$arr[order_id], FILE_APPEND);//以将order_id追加如文本文档为例
?></code>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn