我有一堆多维数组被序列化并保存在一个txt文件中,每行一个。
现在,我正在使用file_get_contents
读取文件,但是当我使用文件内容反序列化变量时,它只回显文件的第一行。
在调试中,文件的内容完全被readed,只有当我反序列化我只得到第一个数组的变量时。我认为我在行尾添加的\n\r
存在一些问题,因为如果我删除第一行,它会正确读取下一行,但只是第一行!
对于前面提到的\n\r
,我首先在\n\r
附加file_put_contents($this->logFile,"\r\n",FILE_APPEND)
之后,在文件中编写序列化的数组。这是对的吗?
我该怎么办?
由于
答案 0 :(得分:5)
我认为你错过了unserialize
的观点。根据文件:
unserialize()接受一个序列化变量并将其转换回PHP值。
(注意使用单)
你确实有几个选择:
file
并到达每一行并单独反序列化。var_export
,然后将该保存文件视为典型的包含。