Well, I have a function that is complex, because I need to make multiple for
within the same function because of the complexity and the amount of information.
I am consuming an API where I need to collect monthly data of a certain person, and every day can have several items, that is, trading in kids.
Pessoa 01
MES 01
PRODUTO 01
PRODUTO 02
MES 02
PRODUTO 01
MES 03
PRODUTO 01
PRODUTO 02
PRODUTO 03
MES 04
So I have to go through each die and save one by one. My function developed as follows:
$todosMembros = DB::select('select id from membros');
foreach ($todosMembros as $membro){
for($a = 1; $a < 13; $a++){ //AQUI preciso ir pois é mensal então tenho 12 messes
$categorias = meuAPI; //AQUI preciso ir uma vez para cada membro
$json_file = file_get_contents($categorias);
$json_str = json_decode($json_file);
$todasCategorias = $json_str->list;
$tamanho = count($todasCategorias);
if($tamanho == 0){//CASO Não haja dados para ele não faço nada
}else{
$tamnhoArray = count($todasCategorias); //QUANTIDADE DE PRODUTOS
for($w = 0; $w < $tamnhoArray; $w++){ //PARA CADA PRODUTO SALVO NO BANCO
DB::select('salvar dados');//AQUI EFETIVO O SALVAMENTO
}
}
}
}
My problem is that I'm saving but I'm exceeding the browser's wait time, that is, it takes so long in the loops of the function that the timeout is exceeded, I checked the database and it is saving normally, after saving everything I'm ready to check if everything has happened correctly, but nothing appears precisely by the limit.
My question is: What is the best way to get this data into the database, so as not to cause problems for my application