Каков наилучший способ вставить массив $ _SERVER в MySQL, а затем выбрать его и восстановить обратно в массив PHP?
Поскольку существует большой и расширяющийся список элементов массива $ _SERVER, я хотел бы сначала сериализовать весь массив и сохранить данные в MySQL как тип «текст». Это позволит избежать многих значений NULL, если отдельный элемент хранится в отдельных полях. Я просто использую одно текстовое поле. Я думаю, что это более эффективно.
Когда я использую json_encode для хранения массива в MySQL, а затем json_decode при его восстановлении, мне приходится избегать слешей с помощью str_replace.
Использование str_replace обременительно и мне кажется, что это может привести к проблемам, если я пропущу символы, которые нужно экранировать. Должен быть лучший способ.
Обратите внимание, что все данные, которые я храню в MySQL, всегда сначала проходят через функцию mysql_real_escape_string, и это также происходит здесь.
используйте вместо этого serialize () и unserialize ().
http://php.net/manual/en/function.serialize.php
(используйте подготовленные операторы из mysqli или PDO, так как данные могут быть повреждены при экранировании текста)
(и лучше использовать тип данных MySQL BLOB вместо TEXT)
Других решений пока нет …