Я хочу поместить уведомление об авторских правах в нижний колонтитул веб-сайта, но я думаю, что это невероятно липкий для того, чтобы год был устаревшим. Как я могу автоматически обновлять год с PHP 4 и PHP 5 ?
Вы можете использовать либо дату, либо strftime . В этом случае я бы сказал, что это не имеет значения, как год – год, независимо от того, что (если нет языкового стандарта, который форматирует год по-другому?)
Например:
<?php echo date("Y"); ?>
На стороне примечания, когда даты форматирования в PHP имеют значение, когда вы хотите отформатировать дату в другом регионе, чем ваш по умолчанию. Если это так, вам нужно использовать setlocale и strftime. Согласно руководству php на дату:
Чтобы форматировать даты на других языках, вы должны использовать функции setlocale () и strftime () вместо даты ().
С этой точки зрения, я думаю, было бы лучше использовать strftime как можно больше, если у вас даже есть удаленная возможность локализовать ваше приложение. Если это не проблема, выберите тот, который вам больше нравится.
<?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.
С PHP-заголовком в более объектно-ориентированном направлении я удивлен, что никто здесь не ссылался на встроенный класс DateTime
:
$now = new DateTime(); $year = $now->format("Y");
или однострочный доступ с доступом класса к экземпляру (php> = 5.4):
$year = (new DateTime)->format("Y");
echo date('Y');
strftime("%Y");
Я люблю strftime . Это отличная функция для захвата / рекомбинирования фрагментов дат / времени.
Кроме того, он соблюдает языковые настройки, которые функция даты не делает.
Это дает вам местное время:
$year = date('Y'); // 2008
И этот UTC :
$year = gmdate('Y'); // 2008
Для четырехзначного представления:
<?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()
дает нам текущую дату.
print date('Y');
Дополнительные сведения см. В документации по функциям даты (): 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
И «эхо» это значение …
используйте функцию PHP, которая называется date()
.
Он принимает текущую дату, а затем вы предоставляете формат для нее
и формат будет просто Y. Capital Y будет четырехзначным годом.
<?php echo date("Y"); ?>
<?php echo date("Y"); ?>
Этот код должен делать
Если ваш сервер поддерживает короткие теги или вы используете PHP 5.4, вы можете использовать:
<?=date("Y")?>
Вы можете использовать простой класс даты PHP. Он предоставляет множество полезных методов и функций:
$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(); ...
Вы можете проверить страницу учебников по библиотеке для получения дополнительных примеров.
Кстати … есть несколько правильных способов отображения авторских прав на сайте. У некоторых людей есть тенденция сделать вещи избыточными, то есть: Copyright © имеют одинаковое значение. Важными частями авторского права являются:
**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");
Если вы хотите увеличить или уменьшить год другим методом; добавьте строку изменения, как показано ниже.
<?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");?>
Вы можете использовать это в разделах нижнего колонтитула, чтобы получить динамический год авторских прав
Получить полный год:
<?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; ?>