这几天做一件事。学习PHP读取更多文件(大约百万行)。考虑到效率问题,做了一个简单的研究。

第一个文件()函数的效率问题。

如果文件()函数是一个常规文件,那么它的效率非常高。例如,每行对应的数据。然后尽量不要使用文件()函数。

你可以使用file_get_contents(),然后把它与爆炸。这将是1 3更快。

例如:

文件样式如下所示:

11111

22222

33333

44444

55555

.. …

nnnnnnnnnnn

如果你用文件($文件)读取它,它需要很长时间。

可以使用下面的方法( )

第二,数组的遍历。

数据已读入数组中。以下是遍历。

我需要确定数组中是否有一个值,例如是否44444是数组中的值。想的第一件事是in_array()。

但是实验效率很低。所以我根据别人的代码想出了一个办法。把数组翻过来。所有值都是1,并且原始值变成索引。只要我把它写在(ARR { }如果美元指数= = 1),这是更有效的。

在数组遍历过程中,如果数组的大小很大,数组中的数据不是万能的,最好是提取遍历数组。这将提高效率。

第三,数组的存储。

保存计算数据。有一个文件。三种方法被认为是。一个直接写入PHP文件。一个是连载,另一个是JSON字符串。

第一种方式

直接将文件写入PHP

需要时直接要求进来。

第二条路。然后file_put_contents变量序列化到文件()。使用时,序列化是好的。

第三条路与第二条路相似。它只是作为JSON字符串编写的。

经过测试,发现第二种效率最高。第三个是第二个。这和第二效率一样。第一个是最慢的。这和我预料的大不一样。