MySQL に保存された datetime オブジェクトが現在から 2 時間以内にあるかどうかを確認しようとしています。特定のリンクを表示するか、現在の時間の将来の ride_hour が 2 時間以上あるかどうかに基づいていません。これが私が試したことです:
$now = date('Y-m-d');
$now_hour = date('h');
$ride_date = date('Y-m-d',strtotime($ride['Ride']['date']));
$full_ride_hour = date('h',strtotime($ride['Ride']['date']));
$ride_hour = $full_ride_hour-2;
そのため、最初にその日を比較して、今日が起こっているかどうかを確認しています。そうであれば、時間を確認する必要はありません。そうでなければ、$ride_hour と $now_hour を比較しようとしています。その日は明らかに機能していますが、時間の比較は機能していないようです。
私がやろうとしているもう 1 つのことは、cakePHP コントローラーで、並べ替え値に基づいて結果を制限することです。結果をすべて、将来の日付の結果、または過去の結果のいずれかに制限しようとしています。これが私が試している方法で、機能していません:
switch ($sort) {
case 0:
$rides = $this->paginate('Ride',array('Ride.user_id' => $user_id,'Ride.date > now()'));
break;
case 1:
$rides = $this->paginate('Ride',array('Ride.user_id' => $user_id));
break;
case 2:
$rides = $this->paginate('Ride',array('Ride.user_id' => $user_id,'Ride.date < now()'));
break;
}
$this->set('sort',$sort);
$this->set('rides', $rides);
ありがとうございました!