Quero colocar um aviso de direitos autorais no rodapé de um site, mas acho que é incrivelmente brega para o ano estar desatualizado. Como eu faria o ano atualizar automaticamente com o PHP 4 e o PHP 5 ?
Eu recebi um aviso usando isso. Adicionado date_default_timezone_set ('UTC'); para evitar receber o aviso. ('UTC + 1' não funciona ... não posso dizer muito, apenas começando com PHP). Provavelmente, há alguma maneira de configurar o PHP para evitar lançar os avisos (em algum arquivo de configuração como o php.ini).
Justin
4
@justin Isso significa que você não definiu o fuso horário padrão e o PHP não gosta disso. Você pode definir o fuso horário padrão no php.iniarquivo com algo parecido date.timezone = "America/Los_Angeles"ou definir no início do seu código com algo parecido date_default_timezone_set( "America/Los_Angeles" ).
Joshua Pinter
7
NOTA: O ano em um aviso de direitos autorais não tem muito valor legal, mas geralmente é adicionado para ajudar as pessoas que desejam saber se os direitos autorais ainda se aplicam. Como tal, é suposto ser o ano em que o trabalho foi publicado. Apenas usar o ano atual realmente não faz nenhum sentido ... No entanto, eu já vi isso feito inúmeras vezes.
Stijn de Witt
7
Eu pessoalmente argumentaria que se tornou uma convenção na web, portanto, embora você esteja tecnicamente correto, não é o que as pessoas esperam. O fato é que, apesar de ter, por exemplo, "Copyright 2007, todos os direitos reservados 'estampados no rodapé de uma página que contém um artigo escrito em 2007, estar tecnicamente correto, é provável que os visitantes do site suponham que o site foi abandonado. Mesmo grandes empresas com equipes de advogados ainda carimbar suas páginas web com o ano em curso, mesmo que seja '2007-2015'.
Nathan Hornby
Respostas:
1152
Você pode usar data ou horário . Nesse caso, eu diria que não importa, pois um ano é um ano, não importa o quê (a menos que haja um código de idioma que formate o ano de maneira diferente?)
Por exemplo:
<?php echo date("Y");?>
Em uma nota lateral, ao formatar datas no PHP, é importante quando você deseja formatar sua data em um código de idioma diferente do padrão. Nesse caso, você deve usar setlocale e strftime. De acordo com o manual php na data:
Para formatar datas em outros idiomas, você deve usar as funções setlocale () e strftime () em vez de date ().
Desse ponto de vista, acho que seria melhor usar o strftime o máximo possível, se você ainda tiver a possibilidade remota de localizar seu aplicativo. Se isso não for um problema, escolha o que você mais gosta.
@ErikvanBrakel apenas fora do interesse do ano em curso na Tailândia é 2556. Não tenho certeza se o PHP local leva isso em conta, mas em um mundo perfeito deve :)
Dirk Hartzer Waldeck
Você poderia simplesmente dizer: date ("Y");
Anos chineses e japoneses ftw! 2016年/二千十六年
Panzercrisis
3
Se eu pudesse fazer isso no Youtube. "Como se você estivesse assistindo isso em <? Php echo date (" Y ");?>"
Ou (PHP 5.3.0+), uma maneira compacta de fazer isso usando uma função anônima para que você não tenha variáveis vazando e não repita código / constantes:
Tente evitar tags curtas, seja <? ou <? = porque não é uma boa prática. Vale ressaltar, no entanto, que muitas boas estruturas como o Zend não permitem o link abreviado de tags de abertura do PHP. Então, por minha causa, pressione algumas teclas para salvar a legibilidade do código.
11307 Wael Assaf
7
Se o seu servidor suportar Tags Curtas, ou você usar o PHP 5.4, poderá usar:
echo date("Y");
php.ini
arquivo com algo parecidodate.timezone = "America/Los_Angeles"
ou definir no início do seu código com algo parecidodate_default_timezone_set( "America/Los_Angeles" )
.Respostas:
Você pode usar data ou horário . Nesse caso, eu diria que não importa, pois um ano é um ano, não importa o quê (a menos que haja um código de idioma que formate o ano de maneira diferente?)
Por exemplo:
Em uma nota lateral, ao formatar datas no PHP, é importante quando você deseja formatar sua data em um código de idioma diferente do padrão. Nesse caso, você deve usar setlocale e strftime. De acordo com o manual php na data:
Desse ponto de vista, acho que seria melhor usar o strftime o máximo possível, se você ainda tiver a possibilidade remota de localizar seu aplicativo. Se isso não for um problema, escolha o que você mais gosta.
fonte
'y'
? : /fonte
<?= date('Y') ?>
Minha versão super preguiçosa de mostrar uma linha de direitos autorais, que permanece automaticamente atualizada:
Este ano (2008), dirá:
No próximo ano, ele dirá:
e fique sempre atualizado com o ano atual.
Ou (PHP 5.3.0+), uma maneira compacta de fazer isso usando uma função anônima para que você não tenha variáveis vazando e não repita código / constantes:
fonte
© <?php echo 2008 != date('Y') ? '2008 - ' . date('Y') : 2008; ?> Me, Inc.
<?php echo '© 2008', ($year = gmdate("Y")) !== '2008'? ' - '.$year : '', ' Me, Inc.'; ?>
Com o PHP indo em uma direção mais orientada a objetos, estou surpreso que ninguém aqui tenha feito referência à
DateTime
classe interna:ou one-liner com acesso de membro da classe em instanciação (php> = 5.4):
fonte
http://us2.php.net/date
fonte
Eu amo strftime . É uma ótima função para pegar / recombinar pedaços de datas / horas.
Além disso, ele respeita as configurações de localidade que a função data não faz.
fonte
Este fornece a hora local:
E este UTC :
fonte
Para uma representação de 4 dígitos:
Representação de 2 dígitos:
Verifique a documentação do php para obter mais informações: https://secure.php.net/manual/en/function.date.php
fonte
Aqui está o que eu faço:
abaixo está uma explicação do que ele faz:
Y fornecerá quatro dígitos (por exemplo, 1990) e y para dois dígitos (por exemplo, 90)
fonte
echo date('Y')
fornece o ano atual e isso será atualizado automaticamente, poisdate()
fornece a data atual.fonte
Para obter mais informações, consulte a documentação da função date (): https://secure.php.net/manual/en/function.date.php
fonte
use uma função PHP que é chamada apenas
date()
.Leva a data atual e você fornece um formato para ela
e o formato será Y. O capital Y será um ano de quatro dígitos.
fonte
Este código deve fazer
fonte
Se o seu servidor suportar Tags Curtas, ou você usar o PHP 5.4, poderá usar:
fonte
Apenas escreva:
Ou:
E 'ecoar' esse valor ...
fonte
Você pode usar a classe de data PHP simples. Ele fornece muitos métodos e funções úteis:
Você pode verificar a página de tutoriais da biblioteca para obter mais exemplos
fonte
Entre ... existem algumas maneiras apropriadas de exibir os direitos autorais do site. Algumas pessoas tendem a tornar as coisas redundantes, ou seja: Copyright © têm o mesmo significado. As partes importantes dos direitos autorais são:
ou
fonte
Para até php 5.4+
Ou você pode usá-lo com uma linha
Se você deseja aumentar ou diminuir o ano, outro método; adicione modificar linha como abaixo.
fonte
use um PHP
date()
função .e o formato será Y. O capital Y será um ano de quatro dígitos.
fonte
melhor código de acesso para esta seção:
fonte
Obter ano completo usado:
Ou obtenha apenas dois dígitos do ano usados assim:
fonte
Minha maneira de mostrar os direitos autorais, que continua atualizando automaticamente
Ele produzirá os resultados como
fonte
Você pode usar isso nas seções de rodapé para obter um ano dinâmico de direitos autorais
fonte
$ ano = data ("Y", horário ($ suaDataVar));
fonte
fonte
Se você estiver usando a extensão da API do Carbon PHP para DateTime , poderá conseguir isso facilmente:
<?php echo Carbon::now()->year; ?>
fonte