PHPファイルの読み込み速度を最適化する方法

不言
リリース: 2023-02-28 16:02:02
オリジナル
2652 人が閲覧しました

先輩の皆さん、こんにちは。
160 万行もの大きなログ ファイルを読みたいと思っています。
ファイルの読み込み速度を最適化する方法を教えてください。
データベースの読み取りと書き込みがしたいからです。
弟は現在、fopen と fget を使用して次のように読み取ります。
先輩方からアドバイスをお願いします。
ありがとうございます。

ディスカッションに返信(解決策)

fgets 行を読み込みます
それでも遅すぎる場合は、次のようにします:
fread ブロックを読み込みます (2048 以上)
読み込み後に行ごとに切り取ります
処理時に処理せずに最後のブロックを保持します、次回使用します 読み取られたコンテンツは接続されて処理されます

最も早い方法は、コマンドでloadfileを使用して一時テーブルに直接ロードしてから処理することです

先輩、コードのデモをしてもらえますか?
ありがとうございます。

$fn = &#39;文件名&#39;;$fp = fopen($fn, &#39;r&#39;);$last = &#39;&#39;;while(! feof($fp)) {  $a = preg_split("/[\r\n]+/", $last . frenad($fp, 2048));  for($i=0; $i<count($a)-1; $i++) {     对数据的处理  }  $last = $a[$i];}if($last) 对数据的处理
ログイン後にコピー

fread を使用してブロックを読み取ると、速度が向上します。

先輩、助けてくれてありがとう。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート