何千ものファイル(> 5000)を読み込んで、その内容を のようなデータテーブルに表示するアプリケーション(PHP/Laravel)
を作成しています。ページの読み込みが非常に遅い(平均3分)。何千ものレコードのページ番号
クライアントに50レコードを表示し、その50レコードを見るまでにシーンの背後で処理をさせる方法はありますか? これは、約50件のレコードを表示して次のクリックで表示できる方法です。ユーザーの次の50件のレコードに対してページネーションを行い、表示できます。 何が最善の方法です。
public function getMails(){
$type = INPUT::get("type");
$result = [];
$all_files = Storage::allFiles('boite/'.$type);
foreach ($all_files as $file){
$file_content = Storage::get($file);
preg_match_all('/x\-sender\:(.+?)\n/s',$file_content, $matches_);
$x_sender = trim($matches_[1][0]);
preg_match_all('/Subject\:(.+?)\n/s',$file_content, $matches__);
$subject = trim($matches__[0][0]);
preg_match_all('/x\-receiver\:(.+?)\n/s',$file_content, $matches);
array_push($result, (object)["file_name"=> $file ,"x_sender"=>$x_sender, "content"=>$file_content, "subject"=>$subject]);
return view('list',compact('result'));
}
と、この私の見解: は、ここで私はこれまで何をしたかである
@foreach($result as $mail)
<li data-fname="{{$mail->file_name}}">
<div class="md-card-list-item-menu" data-uk-dropdown="{mode:'click',pos:'bottom-right'}">
<a href="#" class="md-icon material-icons"></a>
<div class="uk-dropdown uk-dropdown-small">
<ul class="uk-nav">
<li class="delete_mail"><a href="#"><i class="material-icons"></i> Delete</a></li>
</ul>
</div>
</div>
<span class="md-card-list-item-date"></span>
<div class="md-card-list-item-select">
<input type="checkbox" data-md-icheck />
</div>
<div class="md-card-list-item-sender">
<span>{{ $mail->x_sender }}</span>
</div>
<div class="md-card-list-item-subject">
<div class="md-card-list-item-sender-small">
<span>{{ $mail->x_sender }}</span>
</div>
<span>{{ $mail->subject }}</span>
</div>
<div class="md-card-list-item-content-wrapper">
<div class="md-card-list-item-content" >
{!! nl2br($mail->content) !!}
</div>
</div>
</li>
@endforeach
これまでに何を試しましたか? [Laravelのページ設定](https://laravel.com/docs/5.4/pagination)、またはおそらく[Google検索](https://www.google.co.in/search?client=opera&q =ララベル+ページネーション)?あなたが直面している特定の問題に対する解決策を得るために書いたコードを追加してください。可能なアプローチを求めることは広すぎるため、StackOverflowフォーマットには適していません。 – manish