what is the best way to parse big JSON file and insert into database using php?

json, mysql, php

Solution

If you dont want to write ugly code to generate sql queries consider using an ORM Propel and doctrine are the ones i have personally used.

doctrine has a method to generate an object from an array and then simply call a save method on it.

have a look at this http://www.doctrine-project.org/documentation/manual/1_0/en/working-with-models:arrays-and-objects:from-array

Problem

I have this huge JSON file. Currently the way I am using it is: - Read the entire contents into a string - Do json_decode, get the array - Loop through the array one record at a time and build my SQL insert statement Problem is, the code is ugly. Also, some of the objects in these arrays are themselves arrays, and not all records contain all values. I have to use isset to check if a particular value is present, or use a default value etc. Overall, it works correctly, but the code is ugly. Is there any way I can write this better?

Original source