2016-07-18 3 views
2

다음 JSON이 있습니다. 저는 JSON과 Laravel의 초보자입니다. LineNum, StationNameStopNum과 같은 각 배열 객체를 DB에 저장하려고합니다. 어떤 도움이라도 대단히 감사합니다. 구문 분석 할 수 있었지만 DB에 저장할 수 없습니다. 라우트가 LineNum 저장되지Laravel의 MySQL DB에 JSON 객체 저장

foreach ($jsonIterator as $key => $val) { 
    if(is_array($val)) { 
     echo "$key:\n <br />" ; 

     $trainDetail->Route = "$key"; 

    } else { 
     echo "$key => $val\n <br />"; 
     $trainDetail->StopNumber = "$key"; 
     $trainDetail->StationName = "$val"; 
    } 
} 

StopNumb 정확한 값을 저장하지 않는다.

다음은 내가 진행하고있는 JSON입니다.

{"LineNum1":[{"StopNumber":"MN218","StationName":"ABCD"}],"LineNum2":[{"StopNumber":"MN244","StationName":"XYZ"}],"LineNum3":[{"StopNumber":"MN220","StationName":"DEFCG"},{"StopNumber":"MN318","StationName":"QWERTY"}]} 

모든 도움을 주시면 감사하겠습니다. 정상적인 쿼리 이런 식으로 뭔가를 반환합니다

+1

JSON 개체를 저장하는 것은 Laravel에서 다소 힘든 작업입니다. '-> pluck ('field');을 사용하여 배열을 가져 오는 것에 대한 쿼리를 수정하지 않으시려면, – Sachith

+1

예제를 도와 주시겠습니까? 고맙습니다. – PurnaSatyaP

답변

0

감사합니다,

[{"ID":"1","Code":"ECX4236"},{"ID":"10","Code":"LWJ3154"},{"ID":"11","Code":"TTX4201"},{"ID":"12","Code":"TTY2545"},{"ID":"13","Code":"RRA2553"}] 

당신이 Laravel의 질의 형식을 사용합니다.

$items = DB::table('Items')->where('isActive','=',1)->pluck('Code'); 

이 배열을 반환합니다.

["ECX4236","LWJ3154","TTX4201","TTY2545","RRA2553"] 

Laravel을 사용하여 데이터베이스에 쉽게 입력 할 수 있습니다. 이것이 제가하는 것입니다.

+1

내가 잘못 생각한 것 같아. JSON 응답을 반환하는 URL에 액세스하고 있습니다. 응답을 구문 분석하고 데이터를 DB 필드에 저장하려고합니다. 예 : 내 원래 JSON '{ "LineNum1": [{ "StopNumber": "MN218", "StationName": "ABCD"}] "LineNum2": [{ "StopNumber": "MN244", "StationName": " "StopNumber": "MN318", "StationName": "QWERTY"}]} ' LineNum과 StopNumber 및 StationName을 해당 DB 필드에 캡처하려고합니다. 귀하의 솔루션이 나를 위해 작동하지 않을 것 같아요. – PurnaSatyaP