我想在一个网站的页脚放一个版权声明,但我认为这对于过时的年份来说是非常俗气的。
如何在php4或php5中自动更新年份?
我想在一个网站的页脚放一个版权声明,但我认为这对于过时的年份来说是非常俗气的。
如何在php4或php5中自动更新年份?
当前回答
随着PHP朝着更面向对象的方向发展,我很惊讶这里没有人引用内置的DateTime类:
$now = new DateTime();
$year = $now->format("Y");
或者在实例化时使用类成员访问的一行程序(php>=5.4):
$year = (new DateTime)->format("Y");
其他回答
<?php echo date("Y"); ?>
我是这么做的:
<?php echo date("d-m-Y") ?>
下面是对它功能的一些解释:
d = day
m = month
Y = year
Y表示四位数(如1990),Y表示两位数(如90)
<?php echo date("Y"); ?>
这段代码应该
我的超级懒惰版本显示版权行,自动保持更新:
© <?php
$copyYear = 2008;
$curYear = date('Y');
echo $copyYear . (($copyYear != $curYear) ? '-' . $curYear : '');
?> Me, Inc.
今年(2008年),它会说:
©2008 Me, Inc
明年,它会说:
©2008-2009 Me, Inc
并且永远保持当前年份的更新。
或者(PHP 5.3.0+)一种使用匿名函数的紧凑方法,这样你就不会有变量泄露,也不会重复代码/常量:
©
<?php call_user_func(function($y){$c=date('Y');echo $y.(($y!=$c)?'-'.$c:'');}, 2008); ?>
Me, Inc.
在date函数的第二个参数中可以得到更多的值 Strtotime返回参数传递的时间戳
// This work when you get time as string
echo date('Y', strtotime("now"));
// Get next years
echo date('Y', strtotime("+1 years"));
//
echo strftime("%Y", strtotime("now"));
使用datetime类
echo (new DateTime)->format('Y');