特殊json格式转换数组

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yqwwj001/article/details/82113504

接口返回来的是这样的格式,需要做成数组才能进一步处理

SEND:;IP:192.168.2.192;APIID:1;EIPID:1;YSID:20170505011;TOKEN:Token;SEQNO:1531798761;PORTID:71002;CODEMESSAGE:;CLIENTID:1;TYPEID:1;SOURCEID:6;ISDES:1;CODE:100;RETURN:{"SEND":"","ISSPECIAL":"0","RETURNTYPE":"1","COUNTS":"41","PAGES":"5","SKEYS":"","SWHERE":"","LISTID":"0","SORDERBY":"","PAGEBASE":"10","ISDES":"0","PAGEID":"1","RETURN":{"PORTID":"71002","CODE":"100","CODEMESSAGE":"","PAGEID":"1","PAGEBASE":"10","COUNTS":"41","LISTID":"0","PAGES":"5","MESSAGE":[{"crm_id":"1","contractno":"155452502","stateid":"5"},{"crm_id":"1","contractno":"100002101","stateid":"5"},{"crm_id":"1","contractno":"10001005","stateid":"1"},{"crm_id":"1","contractno":"3000","stateid":"1"},{"crm_id":"1","contractno":"1234567890","stateid":"2"},{"crm_id":"1","contractno":"111100","stateid":"3"},{"crm_id":"1","contractno":"101001","stateid":"3"},{"crm_id":"1","contractno":"10112","stateid":"4"},{"crm_id":"1","contractno":"101000","stateid":"1"},{"crm_id":"1","contractno":"4510001","stateid":"2"}]}};MD5:D715C17C1C2DA72B32CDACCE9A975A07; 

<?php
$str = 'SEND:;IP:192.168.2.192;APIID:1;EIPID:1;YSID:20170505011;TOKEN:Token;SEQNO:1531798761;PORTID:71002;CODEMESSAGE:;CLIENTID:1;TYPEID:1;SOURCEID:6;ISDES:1;CODE:100;RETURN:{"SEND":"","ISSPECIAL":"0","RETURNTYPE":"1","COUNTS":"41","PAGES":"5","SKEYS":"","SWHERE":"","LISTID":"0","SORDERBY":"","PAGEBASE":"10","ISDES":"0","PAGEID":"1","RETURN":{"PORTID":"71002","CODE":"100","CODEMESSAGE":"","PAGEID":"1","PAGEBASE":"10","COUNTS":"41","LISTID":"0","PAGES":"5","MESSAGE":[{"crm_id":"1","contractno":"155452502","stateid":"5"},{"crm_id":"1","contractno":"100002101","stateid":"5"},{"crm_id":"1","contractno":"10001005","stateid":"1"},{"crm_id":"1","contractno":"3000","stateid":"1"},{"crm_id":"1","contractno":"1234567890","stateid":"2"},{"crm_id":"1","contractno":"111100","stateid":"3"},{"crm_id":"1","contractno":"101001","stateid":"3"},{"crm_id":"1","contractno":"10112","stateid":"4"},{"crm_id":"1","contractno":"101000","stateid":"1"},{"crm_id":"1","contractno":"4510001","stateid":"2"}]}};MD5:D715C17C1C2DA72B32CDACCE9A975A07;';

function toArray($data){
	$array = explode(';', $data);
	array_pop($array);
	$response = [];
	foreach ($array as $v) {
		$arr = [];
		$arr = explode(':', $v);
		$response[$arr[0]] = substr($v , strlen($arr[0])+1);
		if($arr[0] === 'RETURN')$response[$arr[0]] = json_decode($response[$arr[0]], TRUE);
	}
	return $response;
}


$arr = toArray($str);
echo '<pre>';
print_r($arr);

另外一个公用的方法:

function format($str){
    preg_match('/({.*})/',$str,$arr);
    $array = json_decode($arr[0],TRUE);
    return $array;
}

猜你喜欢

转载自blog.csdn.net/yqwwj001/article/details/82113504