Вставка и получение серверных переменных с использованием PHP и MySQL

Каков наилучший способ вставить массив $ _SERVER в MySQL, а затем выбрать его и восстановить обратно в массив PHP?

Поскольку существует большой и расширяющийся список элементов массива $ _SERVER, я хотел бы сначала сериализовать весь массив и сохранить данные в MySQL как тип «текст». Это позволит избежать многих значений NULL, если отдельный элемент хранится в отдельных полях. Я просто использую одно текстовое поле. Я думаю, что это более эффективно.

Когда я использую json_encode для хранения массива в MySQL, а затем json_decode при его восстановлении, мне приходится избегать слешей с помощью str_replace.

Использование str_replace обременительно и мне кажется, что это может привести к проблемам, если я пропущу символы, которые нужно экранировать. Должен быть лучший способ.

Обратите внимание, что все данные, которые я храню в MySQL, всегда сначала проходят через функцию mysql_real_escape_string, и это также происходит здесь.

0

Решение

используйте вместо этого serialize () и unserialize ().

http://php.net/manual/en/function.serialize.php

(используйте подготовленные операторы из mysqli или PDO, так как данные могут быть повреждены при экранировании текста)

(и лучше использовать тип данных MySQL BLOB вместо TEXT)

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]