我有一张表,其中记录数为 200 000。当我获取记录时,我收到 php 总内存分配错误。避免此类内存泄漏的最佳方法是什么?我应该怎么做?
$params = [];
$params['env'] = 'mfdb';
$params['select_data'] = '*';
$params['table_name'] = 'mf_rms_margin';
$params['where'] = true;
$params['where_data'] = 'created_date = "'.date('Y-m-d').'"';
if(!empty($rmClientId)) {
$params['where_not_in'] = true;
$params['where_not_in_field'] = 'client_id';
$params['where_not_in_array'] = $rmClientId;
}
$params['return_array'] = true;
$marginData = $this->mfm->get_table_data_with_type($params);
这是我的查询,我在其中获取了数以万计的数据,然后我合并记录并将其显示在视图中
$data['mcxFundsData'] = [];
if(!empty($allocationData) && !empty($marginData)) {
$data['mcxFundsData'] = array_merge($allocationData, $marginData);
}
echo $this->load->view('marginfunding/margin_allocation_table', $data, true);
在通过数据查看后,我已经在上面应用了数据表。
我正在考虑实现类似 laravel 块的方法来明智地获取数据块,但欢迎使用其他解决方案代码,谢谢。