Лично функции serialize();
и unserialize();
будут лучше, если вы хотите сохранить массив в базе данных. Функции JSON должны использоваться для строк JSON, которые будут возвращены в JavaScript.
$array = array('data','more data','superdata'=>'even more data');
$array = serialize($array);
// Store array in database after serialized
Затем, чтобы превратить данные обратно в массив из базы данных, вы бы ...
// Fetch the data from the database
$data = $row['myDataArray'];
$array = unserialize($data);
echo $array['superdata']; // Would produce: "even more data"
Надеюсь, это немного поможет вам с вашими проблемами. Если вам нужно превратить его в JSON для отправки в JavaScript, вы должны использовать функцию json_encode($array);
.