PHP 操作大对象 数组如何节省内存
请问,群内的高手,一个20M的txt文本文件大约37万条记录,现在要读到PHP数组中。有没有什么本地缓存的方法,每次,读取很浪费内存。...
请问,群内的高手,一个20M的 txt 文本文件大约37万条记录,现在要读到PHP 数组中。有没有什么本地缓存的方法,每次,读取很浪费内存。
展开
4个回答
2013-05-30
展开全部
20M你要读到数组中,如果你不清楚要用到里面哪些数据,并且你的数据比较规律的话,你可以把这20M切开不同个小文件,再根据你在程序中要用的数据来做判断是载入哪个文件,比如你这20M文件都有一个索引id,1,2,3,4,5....你可以把这20M文件的数据id为1-1000的存到一个文件里,1001-2000存到另一个文件里,你在用时根据要用到的id判断载入哪个文件,这只是个思路,具体要看你的数据是个什么样的,能不能满足切开放的条件
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-30
展开全部
你是要一次性读到php中?如果是的话,那是没有好的办法的,无法怎么读进来都是需要那么多内存的。
如果不是一次性,那就是根据需要读取,那就通过数据库或者用fseek定位到文件指定位置开始读取。
如果不是一次性,那就是根据需要读取,那就通过数据库或者用fseek定位到文件指定位置开始读取。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-30
展开全部
mysql,然后配合运维吧。如果大数据量,当然考虑分表分库。数组是解决不了问题的,textdb又有瓶颈,mysql是必然首选。当然也根据你写的代码的质量有关系咯。如果不能用数据库的话,性能方面可以参考一下ofstar,数据库的话可以参考phpwind,都是你的学习对象。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-30
展开全部
建个数据库吧,把数据存到数据库里面去。。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询