Home  >  Article  >  Backend Development  >  php file_get_contents method of reading large-capacity files, _PHP tutorial

php file_get_contents method of reading large-capacity files, _PHP tutorial

WBOY
WBOYOriginal
2016-07-13 10:14:27938browse

php file_get_contents method of reading large-capacity files,

When we encounter a large text file, such as a large file exceeding tens of megabytes or even hundreds of megabytes or several gigabytes, it is often impossible to open it successfully with Notepad or other editors, because they all need to put all the file contents into the memory. , then a memory overflow will occur and an opening error will occur. In this case, we can use PHP's file reading function file_get_contents() to read in segments. ​

Function description
string file_get_contents ( string $filename [, bool $use_include_path [, resource $context [, int $offset [, int $maxlen ]]]] )
Same as file(), except file_get_contents() reads the file into a string. Will start reading at the position specified by the parameter offset with a length of maxlen content. On failure, file_get_contents() returns FALSE.

The file_get_contents() function is the preferred method for reading the contents of a file into a string. If the operating system supports it, memory mapping technology will also be used to enhance performance.

Application:

The code is as follows Copy code
 代码如下 复制代码

$str = $content=file_get_contents("2.sql",FALSE,NULL,1024*1024,1024);
echo $str;

$str = $content=file_get_contents("2.sql",FALSE,NULL,1024*1024,1024);

echo $str;

If you just want to read a smaller file in segments and finish reading it, you can use the fread() function

 代码如下 复制代码

$fp=fopen('2.sql','r');
while (!feof($fp)){
$str.=fread($fp, filesize ($filename)/10);//每次读出文件10分之1
//进行处理
}

echo $str;

The code is as follows Copy code
$fp=fopen('2.sql','r');while (!feof($fp)){

$str.=fread($fp, filesize ($filename)/10);//Read 1/10 of the file each time

//Process echo $str;
Original: http://www.111cn.net/phper/php/41876.htm http://www.bkjia.com/PHPjc/909745.htmlwww.bkjia.comtrue
http: //www.bkjia.com/PHPjc/909745.html
TechArticlephp file_get_contents method for reading large-capacity files, when we encounter text files that are very large, such as more than dozens Large files of M or even hundreds of M or several G can be opened with Notepad or other editors...
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn