使用Laravel Eloquent從數據庫中檢索數據(大約3MB JSON)時,我得到部分JSON響應。Lumen(Laravel):使用Eloquent獲取大數據時返回的部分JSON響應
但是當我使用正常的php數據庫連接檢索相同的數據時,它工作正常。
我已經在我的php.ini文件中設置了memory_limit來處理大數據。
我需要在我的Laravel(流明)數據庫配置中設置什麼?
使用Laravel Eloquent從數據庫中檢索數據(大約3MB JSON)時,我得到部分JSON響應。Lumen(Laravel):使用Eloquent獲取大數據時返回的部分JSON響應
但是當我使用正常的php數據庫連接檢索相同的數據時,它工作正常。
我已經在我的php.ini文件中設置了memory_limit來處理大數據。
我需要在我的Laravel(流明)數據庫配置中設置什麼?
您可以大塊起來:
$results = collect();
Model::where('foo', 'bar')->chunk(function ($models) use ($results) {
$results->merge($models->toArray());
});
return $results;
我有同樣的問題,幾天就回來與流明框架內工作一段時間。 爲了解決這個問題,你需要添加
這行 - >PDO::MYSQL_ATTR_MAX_BUFFER_SIZE => 20000000
,
在這裏 - 在options array
(12號線)>/vendor/illuminate/database/Connectors/Connector.php
。
MYSQL_ATTR_MAX_BUFFER_SIZE
的默認值設置爲1MB因此您的結果將被截斷。
謝謝:)