使用Laravel在頁面循環並插入資料的方法
P粉282627613
P粉282627613 2023-08-15 21:39:21
0
1
681
<p>我想在每個分頁頁面上執行向資料庫插入操作,從第一頁開始到最後一頁結束,直到最後一頁完成。 但問題是,我嘗試了這段程式碼,但它只循環遍歷了5個資料(根據第一個分頁),而且不停地進行下去。 </p> <p>感謝任何解決我的問題的人。 :)</p> <pre class="brush:php;toolbar:false;">public function __construct() { $this->data = new Data(); } public function dumData() { $data = $this->data->paginate(5); return $data; } public function test() { $page = 1; do { $dataPaginated = $this->dumData($page); $data = $dataPaginated->items(); foreach ($data as $result) { DB::table('test')->insert([ 'name' => $result->name, 'data' => json_encode($result), 'created_at' => Carbon::now(), 'updated_at' => Carbon::now() ]); } $page ; $nextpage = $dataPaginated->nextPageUrl(); } while ($nextpage); return 'success'; }</pre> <p><br /></p>
P粉282627613
P粉282627613

全部回覆(1)
P粉642920522

嘗試將您的dumData()方法變更為以下內容:

public function dumData($pageNumber)
{
    $data = $this->data->paginate(5, ['*'], 'page', $pageNumber);
    return $data;
}

也可以考慮使用chunks來取得資料

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板