初心者は、2G ファイル内の各単語の頻度をカウントするときに問題に遭遇しました。メモリ制限を変更した後でも、「許容メモリ サイズ xxxx バイトが使い果たされました」というエラーが報告されます。結果は、合計を測定することで得られます。行数または文字数を最適化する方法
ディスカッションへの返信 (解決策)
この問題は、ハードウェアが貧弱なコンピューターでは 2G ファイルを開くときにすべてのメモリを使い果たしてしまいます。ストレージ上で分散設計を行います。
このファイルをコードからいくつかの部分に分割し、バッチでカウントする方法はありますか? または、最も頻度の高い単語を出力するだけですか?
テキスト ファイルのみが利用可能です 行の概念
テストした 2013.mp4 は明らかにテキスト ファイルではありません n がファイル内に現れないか、遅れて現れる場合、$sOneLineWords = fgets($fp); はすべてを消費します。ログなどのテキストファイルであれば、大きなファイルを操作するために特別に使用されるPHPのSplFileObject()クラスを使用できます。以前、nginxのアクセスログを分析するためにこれを使用しました。 5G以上です。