Вопрос по mysql, php – десериализовать данные из MySQL

3

в моей ячейке 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";}}";}

я пытаюсь сделать несериализацию

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

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

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

 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
Вы должны на самом деле хранитьserialize()Значение ed в базе данных и когда вы выбираете егоunserialize() Это. Broncha
данные хранятся в форме сериализации, я делаю это, и снова сохраняю универсальные значения Steeve

Ваш Ответ

1   ответ
2

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

//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);
его другое поле и может быть сделано Steeve
ошибка приходит NULL и ничего не вставляется в базу данных снова Steeve
ты хочешь хранить$info['khghg_id'] в том же поле? или другое поле?
проверьте мой отредактированный код.
Я могу получить полную сериализацию значений, которые я протестировал, и он показывает полную строку. Я хочу разбить его на части и сохранить только несколько значений из несериализованных значений. В моем случае я хочу хранить только «. $ info [» ah; khghg_id & apos;]. & apos; значение в базе данных в mycode, где я делаю ошибку, можете ли вы сказать Steeve

Похожие вопросы