我试图根据行的创建时间来计算行。
每一天应该是不同的,但它只是返回我2天。
例如,1天前,它应该计算2,6,8(因为总数是2号加上6号),等等。
下面是代码
$dayLosses = array();
$daywins = array();
$dayTotal = array();
$addCounter = 1;
$counter2 = 2;
while($addCounter < 15){
//losses
$query = "SELECT * FROM `signals` WHERE userID = ? AND outcome = 1 AND created_at BETWEEN
DATE_SUB(DATE(NOW()), INTERVAL $counter2 DAY)
AND DATE_SUB(DATE(NOW()), INTERVAL 1 DAY) ";
//counting losses
$result = $pdo->prepare($query);
$result->bindParam(1, $userID);
if ($result->execute()) {
$dayLosses[] = $result->rowCount();
}
$query = "SELECT * FROM `signals` WHERE userID = ? AND outcome = 2 AND created_at BETWEEN
DATE_SUB(DATE(NOW()), INTERVAL $counter2 DAY)
AND DATE_SUB(DATE(NOW()), INTERVAL $addCounter DAY) ";
//counting winners
$result = $pdo->prepare($query);
$result->bindParam(1, $userID);
if ($result->execute()) {
$daywins[] = $result->rowCount();
}
$dayTotal[] = $day2Loss + $day2Wins;
$counter2 += 1;
$addCounter += 1;
}
echo '<pre>'; print_r($dayLosses); echo '</pre>';
echo '<pre>'; print_r($daywins); echo '</pre>';
echo '<pre>'; print_r($dayTotal); echo '</pre>';
?>
下面是输出
Array
(
[0] => 2
[1] => 1
[2] => 0
[3] => 0
[4] => 0
[5] => 0
[6] => 0
[7] => 0
[8] => 0
[9] => 0
[10] => 0
[11] => 0
[12] => 0
[13] => 0
)
Array
(
[0] => 6
[1] => 1
[2] => 0
[3] => 0
[4] => 0
[5] => 0
[6] => 0
[7] => 0
[8] => 0
[9] => 0
[10] => 0
[11] => 0
[12] => 0
[13] => 0
)
Array
(
[0] => 8
[1] => 8
[2] => 8
[3] => 8
[4] => 8
[5] => 8
[6] => 8
[7] => 8
[8] => 8
[9] => 8
[10] => 8
[11] => 8
[12] => 8
[13] => 8
)
我做错了什么?
上面的输出,是array$dayLosses=array();和$daywins=array();?
这一行的作用是什么:$dayTotal[] = $day2Loss + $day2Wins;?我在你的脚本中找不到其他地方有这些变量。