我如何使用PHP来获得当年的?
我想在网站的页脚上添加一个版权声明,但是我认为这个版本过时的问题非常糟糕。 我如何使用PHP 4和PHP 5自动更新年份?
您可以使用date或strftime 。 在这种情况下,我会说,不pipe一年是一年,不pipe怎样(除非有一个区域设置不同的年份)?
例如:
<?php echo date("Y"); ?>
请注意,在PHP中格式化date时,如果要以与默认不同的区域设置格式化date,则这很重要。 如果是这样,你必须使用setlocale和strftime。 根据date的php手册 :
要以其他语言格式化date,您应该使用setlocale()和strftime()函数来代替date()。
从这个angular度来看,我认为最好尽可能的使用strftime,如果你甚至有一个远程的可能性,必须本地化您的应用程序。 如果这不是问题,请select你最喜欢的那个。
<?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+)使用匿名函数的紧凑方法,所以你没有variables泄漏,不重复代码/常量:
© <?php call_user_func(function($y){$c=date('Y');echo $y.(($y!=$c)?'-'.$c:'');}, 2008); ?> Me, Inc.
随着PHP标题在更加面向对象的方向,我很惊讶这里没有人引用了内置的DateTime
类:
$now = new DateTime(); $year = $now->format("Y");
或实例化(PHP> = 5.4)的类成员访问单线程:
$year = (new DateTime)->format("Y");
echo date('Y');
strftime("%Y");
我喜欢strftime 。 这是抓取/重新组合date/时间的一个很好的function。
此外它尊重datefunction不做的地区设置。
这个给你当地时间:
$year = date('Y'); // 2008
这一个UTC :
$year = gmdate('Y'); // 2008
对于4位数表示:
<?php echo date('Y'); ?>
2位数字表示:
<?php echo date('y'); ?>
检查PHP文档的更多信息: https : //secure.php.net/manual/en/function.date.php
这就是我所做的:
<?php echo date("dmY") ?>
下面是对它做什么的一些解释:
d = day m = month Y = year
Y会给你四位数字(比如1990)和Y两位数字(比如90)
echo date('Y')
给你当前的一年,这将自动更新自date()
给我们当前的date。
print date('Y');
有关更多信息,请查看date()函数文档: https : //secure.php.net/manual/en/function.date.php
写吧:
date("Y") // A full numeric representation of a year, 4 digits // Examples: 1999 or 2003
要么:
date("y"); // A two digit representation of a year Examples: 99 or 03
并“回声”这个值…
使用一个名为date()
的PHP函数。
它采用当前的date,然后你提供一个格式
而格式就是Y. Capital Y将会是一个四位数的年份。
<?php echo date("Y"); ?>
<?php echo date("Y"); ?>
这个代码应该做的
如果你的服务器支持Short Tags,或者你使用PHP 5.4,你可以使用:
<?=date("Y")?>
你可以使用简单的PHPdate类。 它提供了许多有用的方法和function:
$date = new simpleDate(); echo $date->now()->getYear(); echo $date->now()->getMonth(); echo $date->set('2013-01-21')->getDayString(); echo $date->now()->compare('2013-01-21')->isBefore(); ...
您可以查看库教程页面以获取更多示例
顺便说一句…有几个正确的方法如何显示网站的版权。 有些人倾向于使事情冗余,即:版权所有©具有相同的含义。 重要的版权部分是:
**Symbol, Year, Author/Owner and Rights statement.**
使用PHP + HTML:
<p id='copyright'>© <?php echo date("Y"); ?> Company Name All Rights Reserved</p>
要么
<p id='copyright'>© <?php echo "2010-".date("Y"); ?> Company Name All Rights Reserved</p
至于PHP 5.4+
<?php $current= new \DateTime(); $future = new \DateTime('+ 1 years'); echo $current->format('Y'); //For 4 digit ('Y') for 2 digit ('y') ?>
或者你可以用一行来使用它
$year = (new DateTime)->format("Y");
如果你想增加或减less一年的另一种方法; 像下面添加修改行。
<?PHP $now = new DateTime; $now->modify('-1 years'); //or +1 or +5 years echo $now->format('Y'); //and here again For 4 digit ('Y') for 2 digit ('y') ?>
<?php date_default_timezone_set("Asia/Kolkata");?><?=date("Y");?>
您可以在页脚部分使用这个dynamic版权年
获得全年使用:
<?php echo $curr_year = date('Y'); // it will display full year ex. 2017 ?>
或者只能得到像这样使用的两位数字:
<?php echo $curr_year = date('y'); // it will display short 2 digit year ex. 17 ?>
我的方式来显示版权,自动更新
<p class="text-muted credit">Copyright © <?php $copyYear = 2017; // Set your website start date $curYear = date('Y'); // Keeps the second year updated echo $copyYear . (($copyYear != $curYear) ? '-' . $curYear : ''); ?> </p>
它会输出结果为
copyright @ 2017 //if $copyYear is 2017 copyright @ 201x-2017 //if $copyYear is less than 2017
<?php $time_now=mktime(date('h')+5,date('i')+30,date('s')); $dateTime = date('d_m_Y h:i:s A',$time_now); echo $dateTime; ?>