unserialize данные из mysql

в моей ячейке mysql это сохраняется с помощью функции сериализации

a:1:{i:0;s:275:"a:4:{s:8:"khghg_id";s:10:"foo1187";s:3:"uri";s:21:"foo/vtory/1187";s:4:"name";s:5:"nmart";s:5:"tuhlmb";a:3:{i:0;s:40:"knuujhs/201205/13_03_pceb9.jpg";i:1;s:40:"knuujhs/201205/13_03_0wlih.jpg";i:2;s:40:"knuujhs/201205/13_03_tq5wf.jpg";}}";} 

я пытаюсь сделать unserialize

я использую этот код

 $cell =$row9['attachment']; $list = unserialize($cell); $info = unserialize($list[0]); var_dump($info); 

когда я пытаюсь с этим, я получаю ошибку bool (false), поэтому я попытался с parse_str с parse_str i не получил никакой ошибки

  parse_str($cell,$list ); 

но я не получаю вывод в моей базе данных. Я храню вывод в базе данных, и я отправляю запрос в базу данных. Все становится хранимым, кроме этих неэтериализованных значений. Здесь вы можете заметить, что есть

khghg_id, который является foo1187 uri, который является именем foo / vtory / 1187, которое является nmart
Я хочу сохранить эти данные в моей базе данных, поэтому я использую

 '.$info['khghg_id'].' for sending the data to mysql but mysql stores everything other than all unsterilized values 

Вы извлекаете сериализованный текст из базы данных.

Вы несериализуете его. Измените его, а затем, когда вы сохраните его обратно в базу данных, вам нужно его сериализовать

 //retrieve serialized data from database $arr = unserialize($row['properties']); //get the desired value $khghg_id = $arr['khghg_id']; //now insert $khghg_id in database 

Из кода, который вы указали выше .. Я вижу, что вы несериализуете 2 раза .. вам действительно не нужно это делать

 $cell =$row9['attachment']; $list = unserialize($cell); $info = $list[0]; //this line should make the difference var_dump($info);