особая концепция. ',
'uid' => 1,
'прозвище' => 'Картофельный Человек',
'сайт' => ",
'тип сайта' => 1,
'время начала' => 1191074174,
'последний раз' => 1191629784,
'общее количество просмотров' => 14,
'тотлеблоги' => 3
);
Поскольку программа автоматически определяет Magic_quotes_gpc и автоматически экранирует все данные POST и GET (под косыми чертами), $message['sitename'] в приведенном выше массиве становится собственным племенем перед сохранением в базе данных при входе в сохранение. в базе данных mysql, сохраненный контент по-прежнему является «племенем Турен» (не спрашивайте меня: «Как войти в базу данных mysql, и он становится»). Это функция экранирования mysql, и большинство баз данных также полагаются на для выхода ), на данный момент проблем нет.
Проблема возникает, когда это поле извлекается из базы данных, а затем десериализуется. Поскольку значение собственного племени не экранируется из базы данных, во время десериализации произойдет ошибка.
Я подумал о нескольких решениях:
Во-первых, массив больше не существует в одном поле, и каждый ключ существует независимо в поле. Это исключено, поскольку система уже запущена и изменить ее затруднительно.
Во-вторых, добавляет косую черту к сериализованному массиву перед сохранением данных в mysql. На данный момент данные, хранящиеся в mysql, представляют собой племя Турен, но база данных обнаруживает, что данные после десериализации все еще являются племенем Турен, поэтому ей необходимо это сделать. быть обработан снова. Этот массив удаляет косые черты один за другим.
В-третьих, откажитесь от удобства использования :). Не допускайте появления символа «/». Если он появится, он будет автоматически заменен.