使用php怎么读取超大的文件

  介绍

这篇文章给大家介绍使用php怎么读取超大的文件,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

读取大文件最后几行数据:

& lt; php ?/* *   ,*取文件最后$ n行   *大敌;   ,* @param  string  filename 美元;文件路径   ,* @param  int  n 美元;最后几行   ,* @return  mixed 假表示有错误,成功则返回字符串   ,*/function  FileLastLines(文件名,美元,美元n) {   ,,如果(! $ fp =, fopen(文件名,美元,& # 39;" # 39;)){   ,,,echo “打开文件失败,请检查文件路径是否正确,路径和文件名不要包含中文“;   ,,,return 假;   ,,,}   时间=美元才能pos  2;   时间=美元才能eof “,“;   时间=美元才能str “,“;   而才能(n 美元;祝辞,0){   ,,,,(eof 美元;!=,“n") {   ,,,,,如果(! fseek (fp美元,pos美元,SEEK_END)) {   ,,,,,,,eof 美元;=,获取(fp);   ,,,,,,,pos -;   ,,,,,,,其他}{   ,,,,,,,休息;   ,,,,,,,}   ,,,,,}   ,,,str 美元。=,fgets (fp);   ,,,eof 美元;=,““   ,,,n -美元;   ,,,}   return 才能,str美元;   ,,}      echo  nl2br (FileLastLines (& # 39; sss.txt& # 39;,, 4));/* *   ,* *,*,取文件最后$ n行,*   *大敌;   ,* @param  string  filename 美元;文件路径,*   ,* @param  int  n 美元;最后几行,*   ,* @return  mixed 假表示有错误,成功则返回字符串   ,*/function  FileLastLines(文件名,美元,美元n) {   如果才能(! $ fp =, fopen(文件名,美元,& # 39;" # 39;)){   ,,,echo “打开文件失败,请检查文件路径是否正确,路径和文件名不要包含中文“;   ,,,return 假;   ,,,}   时间=美元才能pos  2;   时间=美元才能eof “,“;   时间=美元才能str “,“;   而才能(n 美元;祝辞,0){   ,,,,(eof 美元;!=,“n") {   ,,,,,如果(! fseek (fp美元,pos美元,SEEK_END)) {   ,,,,,,,eof 美元;=,获取(fp);   ,,,,,,,pos——美元;   ,,,,,,,其他}{   ,,,,,,,休息;   ,,,,,,,}   ,,,,,}   ,,,str 美元。=,fgets (fp);   ,,,eof 美元;=,““   ,,,n,美元;   ,,,}   return 才能,str美元;   ,,}   echo  nl2br (FileLastLines (& # 39; sss 只txt # 39;,, 4));      function 尾巴(fp美元,,n, base 美元;=,5)   {   维护才能(n 美元;祝辞,0);   时间=美元才能pos  n 美元;+,1;   时间=美元才能lines 数组();   而才能(count($行),& lt;,=, $ n) {   ,,,试着{   ,,,,,fseek (fp美元,安康;pos美元,SEEK_END);   ,,,,,}   ,,,catch  (Exception  $ e) {   ,,,,,fseek (0);   ,,,,,休息;   ,,,,,}   ,,,pos 美元;*=,美元的基础;   ,,,,(! feof (fp)美元){   ,,,,,函数(线,美元,fgets (fp)美元);   ,,,,,}   ,,,}   return 才能array_slice ($,, 0,, $ n);   ,,}   var_dump(尾(fopen (“access.log",,“r +“),, 10));   美元$ fp =, fopen(文件,,“r");   时间=美元line  10;   pos 美元;=,2;   $ t =,,,,,   $ data =,““   while  (line 美元;祝辞,0){   while 才能;(t 美元;!=,“n") {   ,,,fseek (fp美元,pos美元,SEEK_END);   ,,,t 美元;=,获取(fp);   ,,,pos 美元;-;   ,,,}   时间=美元才能t “,“;   美元才能data 。=, fgets (fp);   美元才能line  -;   ,,}   fclose  (fp);   echo  $数据;   ?在

关于使用php怎么读取超大的文件就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。

使用php怎么读取超大的文件