使用 php 按年/月更新数值
Updating number values by year / month with php
我想知道是否有办法每年更新某个数值?
与您在页脚中更新网站日期的方式类似:
<?php echo date("Y"); ?>
我正在寻找一种每年/每月更新一组数字的方法。
例如,假设一个网站说他们已经经营了 10 年。然后当下一年过去时,我希望 PHP 自动将值更新为 11 年。请注意,我必须从数字 10
开始
另一个例子是年龄:约翰 21 岁。一年过去后,我想 PHP 更新网站,说约翰 22 岁。
或者 Betty 在这里工作了 5 个月....在下个月过去后它会更新为 6,然后一旦达到 12 个月就会变为 1 年然后 2 年等等......那有点更多参与,但你明白了。
如果有人知道如何实现这一点,我将不胜感激,或者如果你能指出正确的方向来解决这个问题,那也能奏效。
是的,您需要了解两件事 - 当前日期和您要与之比较的日期。然后你只需要比较一下。
我建议使用 PHP DateTime
、DateInterval
等 类,这对您来说非常简单。
例如:
$now = new DateTime('now');
$comparison_date = new DateTime('2005-01-01'); // roughly 10 years ago
$interval = $now->diff($comparison_date); // returns DateInterval object
$years_difference = $interval->y;
您可以在这里找到答案:
How to calculate the difference between two dates using PHP?
通过使用 strtotime() 将两个日期转换为 unix 时间并计算它们之间的秒数,然后重新转换为人类可读。
要计算 to 年之间的差异,您可以使用这样的简单求和:
<?php
$cur_year = date("Y");
$year = 2008;
$total_years = $cur_year - $year;
echo ($total_years);
?>
您可以使用类似的东西几个月
用当前时间戳(time()
returns 减去初始 Unix 时间戳,除以 60 * 60 * 24 * 365,并相应地四舍五入(你可能想要 floor()
用户注册的年限,以及 ceil()
企业经营的年限)
$start = 12345646;
$years = ceil((time() - $start) / 31536000.0); // Important: use a float
请注意,这使用 "year" 作为一组 365 天。它不会考虑闰年。
我想知道是否有办法每年更新某个数值?
与您在页脚中更新网站日期的方式类似:
<?php echo date("Y"); ?>
我正在寻找一种每年/每月更新一组数字的方法。
例如,假设一个网站说他们已经经营了 10 年。然后当下一年过去时,我希望 PHP 自动将值更新为 11 年。请注意,我必须从数字 10
开始另一个例子是年龄:约翰 21 岁。一年过去后,我想 PHP 更新网站,说约翰 22 岁。
或者 Betty 在这里工作了 5 个月....在下个月过去后它会更新为 6,然后一旦达到 12 个月就会变为 1 年然后 2 年等等......那有点更多参与,但你明白了。
如果有人知道如何实现这一点,我将不胜感激,或者如果你能指出正确的方向来解决这个问题,那也能奏效。
是的,您需要了解两件事 - 当前日期和您要与之比较的日期。然后你只需要比较一下。
我建议使用 PHP DateTime
、DateInterval
等 类,这对您来说非常简单。
例如:
$now = new DateTime('now');
$comparison_date = new DateTime('2005-01-01'); // roughly 10 years ago
$interval = $now->diff($comparison_date); // returns DateInterval object
$years_difference = $interval->y;
您可以在这里找到答案: How to calculate the difference between two dates using PHP?
通过使用 strtotime() 将两个日期转换为 unix 时间并计算它们之间的秒数,然后重新转换为人类可读。
要计算 to 年之间的差异,您可以使用这样的简单求和:
<?php
$cur_year = date("Y");
$year = 2008;
$total_years = $cur_year - $year;
echo ($total_years);
?>
您可以使用类似的东西几个月
用当前时间戳(time()
returns 减去初始 Unix 时间戳,除以 60 * 60 * 24 * 365,并相应地四舍五入(你可能想要 floor()
用户注册的年限,以及 ceil()
企业经营的年限)
$start = 12345646;
$years = ceil((time() - $start) / 31536000.0); // Important: use a float
请注意,这使用 "year" 作为一组 365 天。它不会考虑闰年。