【发布时间】:2019-08-21 10:46:36
【问题描述】:
修复它。
我正在尝试获取一个表格来显示当月销售的商品的结果。并创建总价值的总和
$currentMonth = date('m');
//Loop through data
foreach($data[$i] AS $api)
{
if ($data[$i]['date_created'] = $currentMonth)
{
$orders[$i]['id'] = $data[$i]['id'];
$orders[$i]['status'] = $data[$i]['status'];
$orders[$i]['date_created'] = $data[$i]['date_created'];
$orders[$i]['total'] = $data[$i]['total'];
}
$i++;
$sum += $data[$i]['total'];
}
现在我得到了可以追溯到去年 11 月的所有结果。
我试图实现的只是本月的结果,所以假设是 2019 年 8 月。
希望大家帮帮我
感谢大家的输入,我确实应该进行 $api 调用,但是我的数组直接从 0 开始,然后 json 结果开始以这种形式显示:
Array
(
[0] => Array
(
[id] => 19778
[date_created] => 2019-08-20T20:06:29
[status] => processing
[total] => 207.00
)
[1] => Array
(
[id] => 19704
[date_created] => 2019-08-19T17:53:56
[status] => processing
[total] => 18.50
)
我可以查询所有结果,但是现在我想根据当前月份进行过滤。
我有一个单独的 HTML 表格,用于执行 for 调用:
<? for($order_out = 0; $order_out < count($orders); $order_out++):
$order_client = $order_out + 1; ?>
<tr>
<td><?=$order_client?></td>
<td><?=strftime("%d-%m-%Y" ,strtotime($orders[$order_out]['date_created']))?></td>
<td><?=$orders[$order_out]['id']?></a></td>
<td><?=$orders[$order_out]['status']?></td>
<td><?=$orders[$order_out]['total']?></td>
</tr>
<? endfor; ?>
【问题讨论】:
-
$data[$i]['date_created'] = $currentMonth没有可比性,它是一个任务。==或===是比较。 -
希望@LLJ97 的回答对您有所帮助。但我的疑问是,为什么你要在 foreach 循环中增加 $i。
-
@MuhammedShihabudeenLabbaA 是对的。您递增并且不使用
$api变量,因此 foreach 循环基本上没有意义。你把它写成一个 for 循环。 -
如果添加一个数组的小样本会更容易帮助
-
哈!群集错字。这是一个很好的。