ホームページ  >  記事  >  バックエンド開発  >  PHPを介して1Gのファイルサイズを読み取る

PHPを介して1Gのファイルサイズを読み取る

jacklove
jackloveオリジナル
2018-06-08 14:29:361937ブラウズ

php ではファイルの読み取りが非常に重要です。より大きなメモリを備えたファイルを読み取るには、特定のスキルが必要です。この記事では、そのスキルについて説明します。

ファイル関数はすべての内容を一度にメモリに読み込みます。また、PHP は、不適切に作成されたプログラムがメモリを大量に消費し、システム メモリ不足を引き起こしてサーバーがクラッシュすることを防ぐためのものであるため、だから、いくつかの良いアイデアが必要です。

01 思路1:利用php执行linux的命令,将一个文件内容(a.log)复制到另一个文件中(b.log)
cat a.log >>b.log
02 思路2:用php执行linux的head命令,获取内容,一行行写入另一个文件(b.log)中。
cat a.log|wc -l
sed -n '1 p' a.log
fileputcontents('b.log’, $content, FILE_APPEND);
//02.读取1G的文件内容
  public function testGetLarge()
  {/*{{{*/
 #01. 方法1 直接cat后重定向
  #if('useCat' == 'useCat')
 if(0 && 'useCat' == 'useCat')
 {
 `cat a.log>>b.log`;
  }
#02. 使用flie_put_contents ,一行一行读取并追加写入
 if('useFilePutContents' == 'useFilePutContents')
 {/*{{{*/
$lineNum = `cat a.log|wc -l`;
for($i=1; $i<= $lineNum; $i++)
 {
   $content = `sed -n &#39;$i p&#39; a.log`;
   //文件追加
   file_put_contents(&#39;b.log&#39;, $content, FILE_APPEND);
   }
   }/*}}}*/

この記事では、PHP を使用して 1G のファイル サイズを読み取る方法について詳しく説明します。詳細については、PHP の中国語 Web サイトを参照してください。

関連する推奨事項:

PHP クラス初期化関数コードの説明

PHP オブジェクト指向、PHP 継承関連のコードの説明

PHP オブジェクト指向のシリアル化と逆シリアル化の関連コードを説明します

以上がPHPを介して1Gのファイルサイズを読み取るの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。