如何在php中对表格日期求和[重复]
Posted
技术标签:
【中文标题】如何在php中对表格日期求和[重复]【英文标题】:how to sum table dates in php [duplicate] 【发布时间】:2021-02-17 02:19:54 【问题描述】:我解析 json 文档并将日期放入表中并放入 id 类型(示例 2、3、4)。
如何通过 id 计算总和?
我的代码
<?php
$json=file_get_contents("https://pv.cec.md/app1/api/reports/GetElectionPresence?electionType=2");
$data = json_decode($json);
if (count($data->Circumscriptions))
// Open the table
echo "<table>";
// Cycle through the array
foreach ($data->Circumscriptions as $idx => $Circumscriptions)
$a = $Circumscriptions->TotalVoted;
// Output a row
echo "<tr>";
echo "<td id='$Circumscriptions->Type'>$Circumscriptions->TotalVoted</td>";
echo "</tr>";
// Close the table
echo "</table>";
$b=array($a);
echo "Total = ". array_sum($b);;
?>
我把它放到网上烦躁https://paiza.io/projects/N9CHMtFrLp9fWqoE1uhvTQ
【问题讨论】:
看到“视图”与“逻辑”混合,但没关系。要对日期求和,请将两者都转换为数值,相加,然后再转换回来。 好的,但是如何转换? 如果你能显示 JSON 的摘录 当您提出问题时,我们不需要查看您的整个脚本。我们只需要看到足够的代码和数据来重现问题。我们不需要您的 sn-p 的前 8 行,也不需要查看任何 html 生成。我们需要样本输入、最少的代码和您想要的确切输出。请阅读所有How to Ask。 哎呀,我之前的评论有错误的代码......它应该是“$b[] = $Circumscriptions->TotalVoted;
需要写在循环中”。 @jonas OP 已经在迭代对象并尝试将每个迭代的值分配给一个临时变量(旨在成为一个数组),以便在循环之后,array_sum()
将正常工作。因为他们每次都覆盖$a
而不是将值推送到临时数组中,所以array_sum()
无法工作。解决方案是了解如何将元素推入数组。工作完成。
【参考方案1】:
您可以向循环添加功能以创建一个 $totals
数组,其中包含每个 id 的投票总数,如下所示:
$totals = [];
foreach ($data->Circumscriptions as $idx => $Circumscriptions)
$a = $Circumscriptions->TotalVoted;
// Output a row
echo "<tr>";
echo "<td id='$Circumscriptions->Type'>$Circumscriptions->TotalVoted</td>";
echo "</tr>";
if (empty($totals[$Circumscriptions->Type]))
$totals[$Circumscriptions->Type] = 0;
$totals[$Circumscriptions->Type] += $Circumscriptions->TotalVoted;
$totals
变量将包含按 id 排序的数据,您可以循环打印或在其他地方使用,例如:
foreach ($totals as $id => $total)
echo "Total of id $id = $total \n";
【讨论】:
请帮助我们关闭基本的重复问题。经过十多年的***问答,所有的基本问题都被问了很多遍。我们不需要增加冗余。请阅读,并非每个问题都需要回答 @How to Answer。以上是关于如何在php中对表格日期求和[重复]的主要内容,如果未能解决你的问题,请参考以下文章