Heim > Fragen und Antworten > Hauptteil
因为要将数组信息保存到数据库中,我试过用serialize
和json_encode
,serialize
比json_encode
转换来得字符串长度要少1/3,但是想请教PHP
中还有没有别的函数或方法可以转换出来更少长度的字符串?
PHP中文网2017-04-10 17:18:22
没必要吧,json_encode其实已经很好了,尤其是考虑数据可能被前端直接调用的时候。如果你的数据库空间不足可以买块硬盘,这是最好的建议。
你压缩的越厉害就需要更大的运算量,解压的时候也就更麻烦,节约空间丧失性能根本就划不来。
你可以自己搜索一下字符串压缩算法,比如 http://www.jb51.net/article/46144.htm
怪我咯2017-04-10 17:18:22
一般来说,除非特殊需求,正常情况下CPU时间比磁盘空间贵得多,所以无需为了磁盘空间而去浪费CPU时间。
压缩、解压缩字符串都很耗时,并不值得。
巴扎黑2017-04-10 17:18:22
主要是看需求,你的字符串压缩之后用于实现什么内容,如果是和其他部分沟通的话,那么用json是比较好的实现方法。如果是用来储存,那么就另算了。