如何在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-&gt;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中对表格日期求和[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何在php中对组中的值求和?

在 BIRT 中对值进行单列求和

如何在 PHP 中对日期数组进行排序

wps表格如何跨表根据月份求金额总和?

SQLite如何从分隔列文本中对另一个表中的值求和?

在 CTE 中对日期范围内的列求和?