我正在尝试使用 php file_get_contents 读取大文件(10M)
$file = 'http://www.remoteserver.com/test.txt';
$data = file_get_contents( $file );
var_dump ( $data );
它转储回来
string(32720)
然后输出仅显示文件的一部分。 file_get_contents 是否有限制?我尝试执行 ini_set('memory_limit', '512M'),但这不起作用。
编辑: **忘记提及** 这是一个远程文件。
问题已解决:: 硬盘空间不足。修复了这个问题,现在一切正常了。
假设您要加载的文件的内容在逻辑上由换行符分隔(例如:不是二进制文件),那么您最好逐行读取。
$fp = fopen($path_to_file, "r");
$fileLines = array();
while (!feof($fp)){
array_push(fgets($fp),$fileContents);
}
fclose($$fp);
你总是可以implode()
(根据您选择的换行符)如果您确实需要将文件放在一个“块”中,则将数组返回到单个字符串。
参考 -
- fgets() http://php.net/manual/en/function.fgets.php
- implode() http://php.net/manual/en/function.implode.php
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)