使用PHP和MySQL插入和检索服务器变量

时间:2014-11-04 12:59:08

标签: php mysql arrays json global-variables

将$ _SERVER数组插入MySQL然后选择它并将其恢复为PHP数组的最佳方法是什么?

由于有一个庞大且不断扩展的$ _SERVER数组元素列表,我首先想要序列化整个数组并将数据存储在MySQL中作为“text”类型。如果单个元素存储在单独的字段中,这将避免许多NULL值。因为它只是使用一个文本字段。我认为这更有效率。

当我使用json_encode将数组存储在MySQL中,然后在恢复它时使用json_decode时,我必须使用str_replace来转义斜杠。

使用str_replace很麻烦,如果我忽略了需要转义的字符,这可能会导致问题。必须有更好的方法。

请注意,我存储在MySQL中的所有数据总是首先通过mysql_real_escape_string函数传递,这也发生在这里。

1 个答案:

答案 0 :(得分:0)

使用serialize()和unserialize()代替。

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

(使用来自mysqli或PDO的预处理语句,因为数据可能会因转义文本而瘫痪)

(最好使用MySQL数据类型BLOB而不是TEXT)