2016-07-14 3 views
-1

이 JSON 개체를 구문 분석하고 그것을 반복하여 html로 테이블을 만듭니다. 예심에, 나는 재산을 반향 할 수 없다. 어떻게해야합니까? json 객체를 올바르게 구문 분석하는 방법은 무엇입니까?

{"1":{"1":"Employer+EID","2":"File+Creation+Date","3":"File+Creation+Time","4":"Payer+EID","5":"Payer+QID","6":"Payer+Bank+Short+Name","7":"Payer+IBAN","8":"Salary+Year+and+Montd","9":"Total+Salaries","10":"Total+records","11":"","12":"","13":"","14":"","15":""},"2":{"1":"12435800","2":"20160714","3":"0318","4":"12435800","5":"","6":"DBQ","7":"QA79DOHB021104613880010010000","8":"201606","9":"183941.22166664","10":"113","11":"","12":"","13":"","14":"","15":""},"3":{"1":"Record+ID","2":"Employee+QID","3":"Employee+Visa+ID","4":"Employee+Name","5":"Employee+Bank+Short+Name","6":"Employee+Account","7":"Salary+Frequency","8":"Number+of+Working+Days","9":"Net+Salary","10":"Basic+Salary","11":"Extra+hours","12":"Extra+Income","13":"Deductions","14":"Payment+Type","15":"Notes/+Comments"},"4":{"1":"1","2":"27835620341","3":"","4":"SHIJAN+THARAKAN+THOMAS","5":"DBQ","6":"2025","7":"M","8":"30","9":"7300","10":"5000","11":"0.00","12":"2500.00000000","13":"200","14":"","15":""}} 

내가 시도 :

$data = json_decode($_POST['data'],true); 

//echo count($data); 

echo ($data[4][2]);` 

이 결과는 null JSON이었다. 이 작업을 올바르게 수행하려면 어떻게해야합니까?

+0

- 그것은 정의되지 않은 디버그 print_r($_POST);으로이 변수는이 데이터 인덱스가 정의되어있는 경우 다음과 같은 데이터의 인덱스를 볼 수 있습니다 배열 데이터를 검사 할 배열. 무엇이 출력됩니까? – Ben

+1

echo'$ data [4] [2]'이 나에게 효과적이며 에코 27835620341, 아마도'$ post [ 'data']'가 정의되지 않았습니까? 나를 위해 – briosheje

+2

작품 : [https://eval.in/605361](https://eval.in/605361) – FirstOne

답변

1

귀하의 JSON 문자열입니다 -

$str = '{"1":{"1":"Employer+EID","2":"File+Creation+Date","3":"File+Creation+Time","4":"Payer+EID","5":"Payer+QID","6":"Payer+Bank+Short+Name","7":"Payer+IBAN","8":"Salary+Year+and+Montd","9":"Total+Salaries","10":"Total+records","11":"","12":"","13":"","14":"","15":""},"2":{"1":"12435800","2":"20160714","3":"0318","4":"12435800","5":"","6":"DBQ","7":"QA79DOHB021104613880010010000","8":"201606","9":"183941.22166664","10":"113","11":"","12":"","13":"","14":"","15":""},"3":{"1":"Record+ID","2":"Employee+QID","3":"Employee+Visa+ID","4":"Employee+Name","5":"Employee+Bank+Short+Name","6":"Employee+Account","7":"Salary+Frequency","8":"Number+of+Working+Days","9":"Net+Salary","10":"Basic+Salary","11":"Extra+hours","12":"Extra+Income","13":"Deductions","14":"Payment+Type","15":"Notes/+Comments"},"4":{"1":"1","2":"27835620341","3":"","4":"SHIJAN+THARAKAN+THOMAS","5":"DBQ","6":"2025","7":"M","8":"30","9":"7300","10":"5000","11":"0.00","12":"2500.00000000","13":"200","14":"","15":""}}'; 

$result_array = json_decode($str, true); 
echo '<pre>'; print_r($result_array); 
echo $result_array[4][2]; 

그것은 나를 위해 잘 작동합니다. 변수 $_POST['data']을 확인하십시오. 당신이 (`json_decode를 사용한 후에`()`에서 print_r를 사용,`)

Array 
(
    ['data'] => 'some_value', 
)