API에 부딪히며 JSON 파일 (많은 객체 배열)을 수신하여 로컬에 저장하는 cron 스크립트를 작성하고 있습니다. 완료되면 다른 스크립트는 다운로드 한 JSON 파일을 구문 분석하고 각 객체를 MySQL 데이터베이스에 삽입해야합니다.큰 JSON 파일을 구문 분석합니다.
나는 json_decode()
과 함께 file_get_contents()
을 사용 중입니다. 이렇게하면 처리하기 전에 전체 파일을 메모리로 읽으려고 시도합니다. 내 JSON 파일의 크기가 일반적으로 250MB-1GB + 이상인 경우를 제외하고는 괜찮습니다. 내 PHP 메모리 제한을 늘릴 수 있지만 그게 내 마음에 가장 큰 대답을하지 않는 것 알아요. 나는 줄 단위로 파일을 읽으려면 fopen()
과 fgets()
을 실행할 수 있지만 각 json 개체별로 파일을 읽어야한다는 것을 알고 있습니다.
개체 당 파일을 읽는 방법이 있습니까? 아니면 비슷한 접근 방법이 있습니까?
이 [포스트] (http://stackoverflow.com/questions/4049428/processing-large-json-files-in-php) 당신을 도울 수 ... –
가 왜 JSON이 너무 커서 파일입니까? –
좋은 슬픔! API 호출에서 1gig 응답 ?? 그건 미친 짓이야. 개발자는 페이지 매김의 개념에 대해 절대 듣지 못했습니까? – Spudley