Max*_*Max 3 php arrays loops sum
我需要从以下数组中获取有效的时间戳:
$arrkeys = array(
"t" => [
1442238840,60,120,180,240,300,360,420,480,540,600,660,720,780,840,900,960,
1442239860,60,120,180,240,300,360,420,480,540,600,660,720,780,840,900,960,
1442240880,60,120,180,240,300,360,420,480,540,600,660,720,780,840,900,960
]
);
Run Code Online (Sandbox Code Playgroud)
我需要将第一个有效时间戳1442238840与以下17个数字相加,以获得正确的时间戳,然后,第二个时间戳1442239860等...
例:
1442238840 + 60;
1442238840 + 120;
1442238840 + 180;
etc...
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚我是如何做到这一点的,我试过的一些事情:
尝试1号
//Pseudo-code
foreach($arrkeys["t"] as $t){
if(strlen($t) < 10){
//Search for the first valid timestamp and sum?
}
}
Run Code Online (Sandbox Code Playgroud)
尝试2号
//Not working.
$array_size = 17;
/* I know that every 17 (counting from 0) have a valid timestamp.
so that 0 = 1st valid timestamp, 20 = 2nd valid timestamp. */
for ($i = 0; $i < $array_size; $i++) {
do {
echo $i;
} while ($i > 0);
Run Code Online (Sandbox Code Playgroud)
我不知道我是否采取正确的方法解决这个问题,我不知道如何有效地做到这一点,或者至少做到这一点.
有什么建议?
我喜欢你尝试过不同的东西.非常好!
你试图自己解决问题并array_chunk()在这里帮助你很多,因为你可以将你的数组块组成17个元素的组,然后用来array_sum()将每组17个元素加在一起,例如
$result = array_chunk($arrkeys["t"], 17);
$result = array_map("array_sum", $result);
Run Code Online (Sandbox Code Playgroud)