1

目前我有两个包含 PHP 的文件。

一个文件运行主脚本 A.php。第二个文件 B.php 包含一个变量 $lines。

A.php:

include("b.php");
$p = explode("\n", $lines);
$p = $p[rand(0, count($p)-1)];
$p = explode(":", $p);

B.php:

$lines= "data1:data2
data1:data2
data1:data2
data1:data2"; //(the actual variable contains 3,000 lines)

A.php 包含 B.php,分解变量并检索要使用的随机行。现在 B.php 包含 3000 行,变成了 83kb,我担心它会拖慢 A.php。

有没有更有效的方法来解决这个问题?

4

1 回答 1

0

有了这么多数据,最好使用数据库 imo,但您可以使用SplFileObject读取特定行,并使用实际数据文件而不是 php 脚本(只需将数据放入常规文本文件中)。

$rndNum = 530; //Generate your random line number.
$file = new SplFileObject('b.txt');
$file->seek($rndNum); //put file cursor at line $rndNum+1
echo $file->current(); 
于 2013-07-28T09:04:11.570 回答