15

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') を実行してみましたが、うまくいきませんでした。

編集:**言及するのを忘れました**これはリモートファイルです。

問題は解決しました:: HDD 容量が不足しています。それを修正し、すべてが機能するようになりました。

4

1 に答える 1

0

読み込みたいファイルの内容が論理的に改行で区切られていると仮定すると (例: バイナリ ファイルではありません)、行ごとに読む方がよいかもしれません。

$fp = fopen($path_to_file, "r");  
$fileLines = array();
while (!feof($fp)){
  array_push(fgets($fp),$fileContents);
} 
fclose($$fp);

1 つの「チャンク」でファイルが本当に必要な場合は、いつでもimplode()(改行文字を選択して) 配列を単一の文字列に戻すことができます。

参照 -

于 2012-09-27T19:38:26.527 に答える