重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
foreach (scandir('data') as $f) if (preg_match('/\d+\.txt/i', $f, $r) {
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:主机域名、虚拟空间、营销软件、网站建设、江口网站维护、网站推广。
$arr=file($f);
$n=rand(0, count($arr)-1);
echo "$f 文件第 $n 行(随机数)内容为: {$arr[$n]}br\n";
}
PHP随机读取TXT文件的某一行,基本思路是这样的:获得总行数、产生随机数、获得随机行,例子代码如下:
?php
$f='1.txt';//文件名
$a=file($f);//把文件的所有内容获取到数组里面
$n=count($a);//获得总行数
$rnd=rand(0,$n);//产生随机行号
$rnd_line=$a[$rnd];//获得随机行
echo "$rnd / $n : $rnd_line \n"; //显示结果
?
以上程序在我的电脑上执行几次的结果如下:
E:\TEMP\文件\expa.php
1 / 8 : [00:05.33]你拿什么来爱我2
E:\TEMP\文件\expa.php
3 / 8 : acfp6o7ib----803sb7rmvz----1525175080=
E:\TEMP\文件\expa.php
1 / 8 : [00:05.33]你拿什么来爱我2
E:\TEMP\文件\expa.php
1 / 8 : [00:05.33]你拿什么来爱我2
E:\TEMP\文件\expa.php
5 / 8 : bxi2jw97----0vaf3bw17s----1525184793=
方法,把文件内容存入数组中,然后产生随机数,再输出结果,思路:
$arr = file('1.txt');
$n=Rand(0, count($arr));
echo $arr[$n];
如果文件不是太大的话,可以这样写:
?php
$arr=file('a.txt'); //文本文件,请修改合适的名字和位置
$n=count($arr);
for ($i=0;$i5;$i++) echo $arr[rand(0,$n)]."br';
?
告诉你思路
先把txt逐行读取进来,赋给一个数组,
比如$a=array(
0='hello',
1='php');
然后随机数组的键值,
然后通过键值到数组取值