我正在使用这个PHP函数从MySQL数据库中获取记录:
function someFunction($date){
// all distinct records
$query = "select count(distinct column_name) as alias from table_name where DATE(date_column) = '$date'";
$result = $connection->query($query);
$row = $result->fetch_assoc();
return $row['alias'];
// end of all distinct records
}
现在,以下PHP代码的作用是,获取日期中的日期,计算它所属月份的星期,并将其存储为数组。
//while fetch_assoc returns records
//$result1 query: "select * from table_name where DATE(date) between '$first_date' and date_add('$end_date',interval 1 day)"
while ($row1 = $result1->fetch_assoc()) {
$date = $row1['date'];
$start = 1;
$end = 7;
for ($i = 1; $i <= 5; $i++) {
if ((int) date('d', strtotime($date)) >= $start && (int) date('d', strtotime($date)) <= $end) {
if (!isset($arr1[$i]) || !isset($arr2[$i])) {
$arr1[$i] = 0;
$arr2[$i] = 0;
}
++$arr1[$i];
$arr2[$i] = someFunction(date('Y-m-d', strtotime($date)));
}
$start += 7;
$end += 7;
}
}
考虑第1,第2和第3属于同一周,第1有3条记录,第2有4和第3有1. while循环将迭代7次,每个值由 someFunction()覆盖$arr2[$i]
中的值。
所以我的问题是,我如何能够检查上一个迭代日期值是否等于当前日期值?
答案 0 :(得分:0)
所以我的问题是,我如何能够检查上一个迭代日期值是否等于当前日期值?
伪代码:
$lastValue = …; // initialization with a value that does not occur in the actual values,
// such as NULL, empty string, …
while(…) {
if($currentValue == $lastValue) {
// do something
}
else {
// do something else
}
// …
$lastValue = $currentValue; // set current value for next loop interation
}