亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php 二維數組 怎么獲取不同值對應的時間差

php 二維數組 怎么獲取不同值對應的時間差

PHP
慕桂英3389331 2018-11-17 17:27:02
$arr=['0' =>['a1' => 'true','time' => 1537861731],'1' =>['a1' => 'false','time' => 1541035671],'2' =>['a1' => 'true','time' => 1541036000],'3' =>['a1' => 'true','time' => 1541036010]'4' =>['a1' => 'false','time' => 1541036020]  ];   true:接通;   false:未接通;   true到false的時間是接通時間; false到true的是未接通時間;        結果:想獲取所有的接通時間。    就是用false對應的時間戳減去前面的為true的時間戳。    這個試例中的就只能 用1減去0的時間,4減去2的時間。
查看完整描述

1 回答

?
楊魅力

TA貢獻1811條經驗 獲得超6個贊

從你這段數組上感覺你對于通話時長,這段業務處理的很奇怪(指的是數組的形成方式)。
通過下面的代碼應該可以得到你想要的結果:

$true_key = null;
$times = [];foreach ($arr as $key => $value) {    if ($value['a1'] == 'true') {        // 記錄true第一次出現時的下標
        if ($true_key === null) {
            $true_key = $key;
        }        continue;
    }    /**
     * 記錄
     */
    if (($value['a1'] == 'false') && ($true_key !== null)) {
        $times[]  = $value['time'] - $arr[$true_key]['time'];
        $true_key = null;
    }
}


查看完整回答
反對 回復 2018-11-17
  • 1 回答
  • 0 關注
  • 663 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號