Как получить все значения SQL-запроса внутри For в PHP?
у меня есть следующий код, где я делаю запрос внутри for, и когда я хочу вернуть это значение, я получаю только последнюю запись, это последнее значение, которое имел цикл ($i Мой счетчик в for). я хочу знать, как сохранить разные результаты For.
if($result){
$reporte=array();
for($i=0;$i<$cuantos;$i++){
$reportadas[]=[];
$iduser1=$result[$i]->IDUSER;
$reporte=array(DB::select("SELECT IDUSER,SUM(hor) as total,(ROUND(((sum(hor)*100)/45),2,0)) as EficienciaReal
from
(SELECT IDUSER,TIEMPO,(TIEMPO/60) as hor
FROM [dbo].[datos]
where fecha between '{$fech1}' and '{$fech2}' and IDUSER=$iduser1) as T1
Group by IDUSER"));
}
var_dump($reporte);
/*
return view("estancia.datos")
->with("result",$result)
->with("reporte",$reporte);*/
только если я помещаю var_dum ($Report) внутри for, я вижу массив с моими полными результатами из того, что я нанял, я получаю это
1
1 answers
Проблема в том, что вы перезаписываете переменную на каждой итерации. Вам нужно создать массив с результатами asi:
if($result){
$reporte=array();
for($i=0;$i<$cuantos;$i++){
$reportadas[]=[];
$iduser1=$result[$i]->IDUSER;
$reporte[]=array(DB::select("SELECT IDUSER,SUM(hor) as total,(ROUND(((sum(hor)*100)/45),2,0)) as EficienciaReal
from
(SELECT IDUSER,TIEMPO,(TIEMPO/60) as hor
FROM [dbo].[datos]
where fecha between '{$fech1}' and '{$fech2}' and IDUSER=$iduser1) as T1
Group by IDUSER"));
}
var_dump($reporte);
/*
return view("estancia.datos")
->with("result",$result)
->with("reporte",$reporte);*/
0
Author: alanfcm, 2019-03-07 21:17:36