Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP过滤器和求和数组值_Php_Arrays - Fatal编程技术网

PHP过滤器和求和数组值

PHP过滤器和求和数组值,php,arrays,Php,Arrays,我有一个包含以下数组(日期、任务、参与者、hh:mm)的php脚本 怎样才能做到这一点? 欢迎您提供任何建议或后续步骤。如果您有多维数组,这将更易于筛选。不过,类似这样的东西对当前的结构也适用: $task = "Learning PHP"; foreach($arr as $k=>$v) { $pieces = explode("|", $v); if($pieces[1]==$task) { $total += (int) str_replace(':

我有一个包含以下数组(日期、任务、参与者、hh:mm)的php脚本

怎样才能做到这一点?
欢迎您提供任何建议或后续步骤。

如果您有多维数组,这将更易于筛选。不过,类似这样的东西对当前的结构也适用:

$task = "Learning PHP";

foreach($arr as $k=>$v) {
    $pieces = explode("|", $v);
    if($pieces[1]==$task) {
        $total += (int) str_replace(':','',$pieces[3]);
        echo $pieces[0] . " " . $pieces[2] . " " . $pieces[3];
    }
}

echo "Total: " . $total;

遍历数组值。按
|
分解,时间将为
$yourArray[2]
。之后,您可以通过
进行分解并将它们相加,或者使用DateInterval类。我不知道要尝试什么或如何继续。(我是新手,不是程序员)谢谢你,先生,这正是我想要的。(唯一的问题是总数等于“3420”而不是“35:00”)
2013-01-29 Hardy  07:00
2013-01-28 Laurel 07:30
2013-01-28 Keaton 07:30
2013-01-27 Laurel 05:30
2013-01-27 Hardy  07:30
=======================
TOTAL             35:00
$task = "Learning PHP";

foreach($arr as $k=>$v) {
    $pieces = explode("|", $v);
    if($pieces[1]==$task) {
        $total += (int) str_replace(':','',$pieces[3]);
        echo $pieces[0] . " " . $pieces[2] . " " . $pieces[3];
    }
}

echo "Total: " . $total;