ho provato usando array_filter, che forse fa più al caso mio.
Codice PHP:
<tbody>
<?php
$query = $stDocumentiRighe->getSumDayMonthByNegozioAnnoChiusoTipo($negozio, $anno, 1, 1, $mese, $key);
$qta = 0;
$netto = 0;
$lordo = 0;
$countVe = 0;
$startGiorno = "01-" . $mese . "-" . $anno;
$startTime = strtotime($startGiorno);
$endTime = strtotime("+1 month", $startTime);
for ($i = $startTime; $i < $endTime; $i += 86400):
$giornoNum = date('j', $i);
$giorno = date('D', $i);
?>
<tr>
<td class="text-left"><?php echo $giornoNum . ' - ' . $giorno; ?></td>
<!--<td class="text-right"><?php echo $qta; ?></td>-->
<td class="text-right">
<?php
$filter = array_filter($query, function($item) use ($giornoNum) {
return $giornoNum == $item['giorno_num'];
});
echo $filter[0]['sum_qta'];
?>
</td>
<td class="text-right"><?php echo number_format($netto, 2, ',', '.'); ?></td>
<td class="text-right"><?php echo number_format($lordo, 2, ',', '.'); ?></td>
<?php if ($anno == $annoCorrente): ?>
<td></td>
<td></td>
<?php endif; ?>
</tr>
<?php endfor; ?>
</tbody>
però mi stampa il valore solo su un giorno, e mi accorpa le quantità.
come se non "azzerasse" il filtro per ogni giorno.