我正在尝试做一个脚本,惩罚用户每天后的时间戳。第一天扣1分,第二天扣2分,第三天扣4分,第四天扣8分,16,32,64分,以此类推。
我该如何自动生成strtotime和乘法呢?
我真的不知道在这一点上我正在寻找的是什么,这使得搜索变得困难,如果这篇文章已经发布了,很抱歉。
发布于 2012-10-25 14:08:18
让我们假设,$timestamp1是第一天的时间戳,$timestamp2现在是时间戳。然后:
$difference = abs(strtotime($timestamp2)-strtotime($timestamp1));
$days = floor($difference / (60*60*24));
$penalty = pow(2,$days);
echo "{$days} left, so your penalty is: {$penalty}";示例结果:
0 left, so your penalty is: 1
1 left, so your penalty is: 2
2 left, so your penalty is: 4
3 left, so your penalty is: 8
4 left, so your penalty is: 16
5 left, so your penalty is: 32
6 left, so your penalty is: 64
...发布于 2012-10-25 14:08:10
尝尝这个
$initial_date = '2012-10-20';
$initial_datetime = new DateTime($initial_date);
$today_datetime = new DateTime();
$days_passed = $initial_datetime->diff($today_datetime)->format('%a');
$penalty = pow(2, ($days_passed-1));
echo $penalty;https://stackoverflow.com/questions/13062407
复制相似问题