PHP如何从文本中提取指定行数内容

2024-11-21 04:44:32
推荐回答(5个)
回答1:

PHP如何从文本中提取指定行数内容?在php中,通过fopen()方法打开文件,在while中使用fgets()方法获取每行数据,每读到一行,就使用标识记录一次,通过累计记录数计算出文件的行数。下面介绍实现的过程。
方法/步骤分步阅读
1
/7
新建一个php文件,命名为handle.php,用于讲解PHP怎么获取文件的行数。
2
/7
新建一个文本文件,命名为test.txt,在里面输入四行数据,分别是aaa,bbb,ccc,ddd。
3
/7
在handle.php文件里,使用fopen方法以只读方式打开test.txt文件,代码如下:
4
/7
在handle.php文件里,创建一个初始变量i,用于保存文件内容的行数。
5
/7
通过while()语句,使用fgets方法从文件指针中读取一行,每读取一行,变量i自加一,直到到达文件末尾停止while的执行。
注:!feof($handle),函数检测是否已到达文件末尾。
6
/7
最后,使用echo输出文件的行数,并通过fclose关闭文件资源。代码如下:
7
/7
在浏览器执行handle.php文件,查看输出的行数,执行的结果为4行。
内容仅供参考并受版权保护

回答2:

这是程序代码
思路是和楼上的基本一致

$open=file_get_contents("abcd.txt");
//把abcd.txt整个文件当做字符串存在$open变量里
$arr=explode("\r\n",$open);
/*按照windows换行作为分割条件,分割$open变量
换行:linux的\r,unix的时\n,windows是\r\n,html里是

*/
shuffle($arr);
//打乱数组
for($i=0;$i<10;$i++)
//循环,这回是输出$arr2的10条
{
echo $arr[$i].'
';
}

?>

测试过了,没问题

回答3:

使用函数explode将几千行文本信息按照分行方式分割字符串到数组中,然后使用shuffle函数将数组随机排序,取前10条记录信息。

回答4:

$arr = file('1.txt',FILE_SKIP_EMPTY_LINES);
$count = count($arr);
$con = array_slice($arr, rand(0, $count), 10);
$string =  implode('', $con);

$string为你要的结果。

回答5:

PHP中的 file_get_contents()、explode() 函数可以实现。

file_get_contents() 函数把整个文件读入一个字符串中。

explode() 函数以指定的分割符把字符串打散为数组。

例如:


//把read.txt文本中的内容读取到一个字符串中

$str = file_get_contents('read.txt');

//用换行的分割符(\r\n)把字符串分割为数组,也就是把每一行分割为成数组的一个值

$array = explode("\r\n",$str);

//输出文本中第4行内容(因为数组的键值是从0开始的,所以第4行也就是键值3)

echo $array[3];

?>