වත්මන් වර්ෂය ලබා ගැනීමට මම PHP භාවිතා කරන්නේ කෙසේද?


951

වෙබ් අඩවියක පාදමෙහි ප්‍රකාශන හිමිකම් දැන්වීමක් තැබීමට මට අවශ්‍යය, නමුත් එය යල්පැනගිය වසරක් ලෙස ඇදහිය නොහැකි තරම් ඇලෙන සුළු යැයි මම සිතමි. PHP 4 සහ PHP 5 සමඟ ස්වයංක්‍රීයව වර්ෂය යාවත්කාලීන කරන්නේ කෙසේද ?


640
echo date("Y");
සැක

2
මට ඒකෙන් අනතුරු ඇඟවීමක් ලැබුණා. එකතු කළ දිනය_ඩෙෆෝල්ට්_ටයිසෝන්_සෙට් ('යූටීසී'); අනතුරු ඇඟවීම වළක්වා ගැනීමට. ('UTC + 1' ක්‍රියා නොකරයි ... PHP සමඟ ආරම්භ වන තරමට ඔබට පැවසිය නොහැක). අනතුරු ඇඟවීම් විසි නොකිරීමට PHP වින්‍යාස කිරීමට යම් ක්‍රමයක් තිබේ (php.ini වැනි සමහර වින්‍යාස ගොනුවක).
ජස්ටින්

4
ustjustin මෙයින් අදහස් කරන්නේ ඔබ පෙරනිමි කාල කලාපය සකසා නැති අතර PHP එයට කැමති නැති බවයි. ඔබට php.iniගොනුවේ පෙරනිමි කාල කලාපය වැනි දෙයක් සමඟ date.timezone = "America/Los_Angeles"සැකසිය හැකිය, නැතහොත් ඔබේ කේතයේ ආරම්භයේ දී වැනි දෙයක් සමඟ එය සැකසිය හැකිය date_default_timezone_set( "America/Los_Angeles" ).
ජෝෂුවා පින්ටර්

7
සටහන: ප්‍රකාශන හිමිකම් දැන්වීමක වර්ෂය ඇත්ත වශයෙන්ම එතරම් නීතිමය වටිනාකමක් නැත, නමුත් සාමාන්‍යයෙන් එය එකතු කරනු ලබන්නේ ප්‍රකාශන අයිතිය තවමත් අදාළ වේද යන්න දැන ගැනීමට කැමති අයට උපකාර කිරීම සඳහා ය. එනිසා එය කෘතිය ප්‍රකාශයට පත් කළ වර්ෂය විය යුතුය. වත්මන් වර්ෂය භාවිතා කිරීම ඇත්තෙන්ම කිසිම තේරුමක් නැති දෙයක් ... කෙසේ වෙතත් එය අසංඛ්‍යාත වාරයක් කර ඇති බව මම දැක ඇත්තෙමි.
ස්ටිජන් ඩි විට්

8
මම වෙබ් සම්මුතියක් බවට පත්ව ඇති බව මම පෞද්ගලිකව තර්ක කරමි, එබැවින් ඔබ තාක්‍ෂණිකව නිවැරදි වුවද එය මිනිසුන් අපේක්ෂා කරන දේ නොවේ. කාරණය වන්නේ 2007 දී ලියන ලද ලිපියක් අඩංගු පිටුවක පාදයේ කොටා ඇති “ප්‍රකාශන හිමිකම් 2007, සියලු හිමිකම් ඇවිරිණි” තාක්‍ෂණිකව නිවැරදි වුවත්, වෙබ් අඩවියට පැමිණෙන අමුත්තන් වෙබ් අඩවිය අතහැර දමා ඇතැයි උපකල්පනය කිරීමට ඉඩ ඇත. '2007-2015' වුවද, නීති yers කණ්ඩායම් සමඟ සංස්ථා තවමත් ඔවුන්ගේ වෙබ් පිටු මුද්‍රණය කරයි.
නේතන් හෝර්න්බි

Answers:


1173

ඔබට දිනය හෝ strftime භාවිතා කළ හැකිය . මේ අවස්ථාවේ දී මම කියන්නේ අවුරුද්දක් අවුරුද්දක් බැවින් කමක් නැත, කුමක් වුවත් (වසර වෙනස් ලෙස හැඩගස්වන ස්ථානයක් නොමැති නම්?)

උදාහරණයක් වශයෙන්:

<?php echo date("Y"); ?>

පැත්තක සටහනක, PHP හි දිනයන් සංයුති කිරීමේදී ඔබේ දිනය ඔබේ පෙරනිමියට වඩා වෙනස් ස්ථානයක සංයුති කිරීමට අවශ්‍ය විට එය වැදගත් වේ. එසේ නම්, ඔබට setlocale සහ strftime භාවිතා කළ යුතුය. අනුව php අත්පොත දිනය:

වෙනත් භාෂාවලින් දිනයන් සංයුති කිරීම සඳහා, ඔබ දිනය () වෙනුවට setlocale () සහ strftime () ශ්‍රිත භාවිතා කළ යුතුය.

මෙම දෘෂ්ටි කෝණයෙන්, ඔබේ යෙදුම දේශීයකරණය කිරීමට ඔබට දුරස්ථ හැකියාවක් තිබේ නම්, හැකි තරම් strftime භාවිතා කිරීම වඩාත් සුදුසු යැයි මම සිතමි. එය ගැටලුවක් නොවේ නම්, ඔබ වඩාත්ම කැමති දේ තෝරන්න.


4
හුදෙක් පොලී පිටතට තායිලන්තයේ දී වත්මන් වසර PHP පෙදෙසි සැලකිල්ලට ගත වේ නමුත් පරිපූර්ණ ලෝකයේ එය :) යුතු නම් කැමති නෑ 2556. වේ @ErikvanBrakel
ඩර්ක් Hartzer Waldeck

ඔබට සරලව කිව හැකිය: දිනය ("Y");

චීන සහ ජපන් අවුරුදු ftw! 2016 / 二千 十六 年
Panzercrisis

3
මට මෙය යූ ටියුබ් හි කළ හැකි නම්. "ඔබ මෙය <? Php echo date (" Y ") ;?> හි නරඹන්නේ නම් මෙන්
Luka

ඔව්, වසරක් සංයුති කිරීම සඳහා විවිධ ක්‍රම තිබේ, උදා: තායි අවුරුදු බෞද්ධ යුගය (බටහිර ගණනය කිරීමේ
ක්‍රමයෙන් +543

515
<?php echo date("Y"); ?>

32
එසේම,<?= date('Y') ?>
ෂේන් ​​රිස්ටල්

33
කෙටි ටැග් වලට සියලුම සේවාදායකයන් සහාය නොදක්වන අතර මෙයද ඇත: programmmers.stackexchange.com/questions/151661/…
ඩර්ක් හාර්ට්සර් වොල්ඩෙක්

5
PHP 5.4 හි, ඔබට ඉහත වැනි කෙටි echo tags නිදහසේ භාවිතා කළ හැකිය. ඔවුන් දර්ශනවල වඩා හොඳයි.
ජිම්බෝ

1
Han ෂේන් රෙස්ට්ල්, ඔබට අවසානයේදී අර්ධ සළකුණු මඟ හැරුණි;) මෙම නඩුවේ ඒවා වැදගත් නොවන බව මම දනිමි, නමුත් එය ආරම්භකයින් සඳහා හොඳ පුරුද්දකි :)
ඩිමිටර්

204

කතුහිමිකම රේඛාවක් පෙන්වීමේ මගේ සුපිරි කම්මැලි අනුවාදය, එය ස්වයංක්‍රීයව යාවත්කාලීන වේ:

&copy; <?php 
$copyYear = 2008; 
$curYear = date('Y'); 
echo $copyYear . (($copyYear != $curYear) ? '-' . $curYear : '');
?> Me, Inc.

මේ වසරේ (2008), එය මෙසේ කියයි:

© 2008 මා, ඉන්ක්.

ලබන වසරේ එය මෙසේ කියනු ඇත:

© 2008-2009 මී, ඉන්ක්.

වත්මන් වර්ෂය සමඟ සදහටම යාවත්කාලීනව සිටින්න.


හෝ (PHP 5.3.0+) නිර්නාමික ශ්‍රිතයක් භාවිතයෙන් එය කළ හැකි සංයුක්ත ක්‍රමයක් වන අතර එමඟින් ඔබට විචල්‍යයන් කාන්දු නොවන අතර කේත / නියතයන් නැවත නොකරන්න:

&copy; 
<?php call_user_func(function($y){$c=date('Y');echo $y.(($y!=$c)?'-'.$c:'');}, 2008); ?> 
Me, Inc.

15
කෙටි (නමුත් කියවිය නොහැකි) අනුවාදය:&copy; <?php echo 2008 != date('Y') ? '2008 - ' . date('Y') : 2008; ?> Me, Inc.
hitautodestruct

මගේ එක් පේළියේ අනුවාදය:<?php echo '&copy; 2008', ($year = gmdate("Y")) !== '2008'? ' - '.$year : '', ' Me, Inc.'; ?>
ale5000

71

PHP වඩාත් වස්තු-දිශානත දිශාවකට ගමන් කිරීමත් සමඟ, මෙහි කිසිවෙකු බිල්ට් DateTimeපංතිය ගැන සඳහන් නොකිරීම පුදුමයට කරුණකි :

$now = new DateTime();
$year = $now->format("Y");

හෝ ක්ෂණිකකරණය සඳහා පන්ති සාමාජික ප්‍රවේශය සහිත එක් ලයිනර් (php> = 5.4):

$year = (new DateTime)->format("Y");


28
strftime("%Y");

මම strftime වලට කැමතියි . දිනයන් / වේලාවන් කැබලි අල්ලා ගැනීම / නැවත එකතු කිරීම සඳහා එය විශිෂ්ට කාර්යයකි.

ප්ලස් එය දිනය ශ්‍රිතය නොකරන ස්ථාන සැකසීම් වලට ගරු කරයි.



13

මෙන්න මම කරන දේ:

<?php echo date("d-m-Y") ?>

එය කරන්නේ කුමක්ද යන්න පිළිබඳ පැහැදිලි කිරීමක් පහත දැක්වේ:

d = day
m = month
Y = year

Y ඔබට ඉලක්කම් හතරක් (උදා: 1990) සහ y ඉලක්කම් දෙකකට ලබා දෙයි (උදා 90)


12

ඉලක්කම් 4 නියෝජනය සඳහා:

<?php echo date('Y'); ?>

ඉලක්කම් 2 නිරූපණය:

<?php echo date('y'); ?>

වැඩි විස්තර සඳහා php ප්‍රලේඛනය පරීක්ෂා කරන්න: https://secure.php.net/manual/en/function.date.php


10

echo date('Y')වත්මන් වර්ෂය ඔබට date()ලබා දෙන අතර, වත්මන් දිනය අපට ලබා දෙන බැවින් මෙය ස්වයංක්‍රීයව යාවත්කාලීන වේ.



8

PHP ශ්‍රිතයක් භාවිතා කරන්න date().

එය වත්මන් දිනය ගත වන අතර පසුව ඔබ එයට ආකෘතියක් ලබා දේ

කැපිටල් Y යනු ඉලක්කම් හතරක වසරක් වනු ඇත.

<?php echo date("Y"); ?>

8
<?php echo date("Y"); ?>

මෙම කේතය කළ යුතුය


1
කෙටි පෝරම ටැග් වලින් වැළකී සිටීමට උත්සාහ කරන්න, එය <? හෝ <? = එය හොඳ පුරුද්දක් නොවන නිසා. සෙන්ඩ් වැනි බොහෝ හොඳ රාමු කෙටිකාලීන PHP ආරම්භක ටැග් සබැඳියට ඉඩ නොදෙන බව සඳහන් කිරීම වටී. එබැවින් කරුණාකර මගේ කේතය කියවීමේ හැකියාව සුරැකීම සඳහා යතුරු එබීම් කිහිපයක් කරන්න.
වේල් අසාෆ්

මෙය දැනට පවතින මෙම පිළිතුරේ පුනරාවර්තනයක් ලෙස පෙනේ .
පැං

7

ඔබේ සේවාදායකය කෙටි ටැග් සඳහා සහය දක්වන්නේ නම් හෝ ඔබ PHP 5.4 භාවිතා කරන්නේ නම්, ඔබට මෙය භාවිතා කළ හැකිය:

<?=date("Y")?>

6
කරුණාකර, කිසි විටෙකත්, කිසි විටෙකත්, කෙටි ටැග් නැවත භාවිතා නොකරන්න. stackoverflow.com/questions/200640/…
ජෙල්මර්

php v5.4.0 - short_open_tag ini සැකසුම නොසලකා <? = ටැගය සැමවිටම ලබා ගත හැකිය. එබැවින් දැන් ඔබට මෙම වාක්‍ය ඛණ්ඩය භාවිතා කළ හැකිය.
nektobit

7

ලියන්න:

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

මෙම අගය 'ප්‍රතිරාවය කරන්න ...


5

BTW ... අඩවි ප්‍රකාශන අයිතිය ප්‍රදර්ශනය කරන්නේ කෙසේද යන්න පිළිබඳ නිවැරදි ක්‍රම කිහිපයක් තිබේ. සමහර අයට දේවල් අතිරික්තයක් බවට පත් කිරීමේ ප්‍රවණතාවක් ඇත, එනම්: ප්‍රකාශන හිමිකම © දෙකම එකම අර්ථයක් ඇත. වැදගත් ප්‍රකාශන හිමිකම් කොටස්:

**Symbol, Year, Author/Owner and Rights statement.** 

PHP + HTML භාවිතා කිරීම:

<p id='copyright'>&copy; <?php echo date("Y"); ?> Company Name All Rights Reserved</p>

හෝ

<p id='copyright'>&copy; <?php echo "2010-".date("Y"); ?> Company Name All Rights Reserved</p

5

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')
?>

5

PHP date()ශ්‍රිතයක් භාවිතා කරන්න .

කැපිටල් Y යනු ඉලක්කම් හතරක වසරක් වනු ඇත.

<?php echo date("Y"); ?>


3

සම්පූර්ණ වසර භාවිතා කරන්න:

 <?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
?>

3

ප්‍රකාශන හිමිකම පෙන්වීමට මගේ ක්‍රමය, එය ස්වයංක්‍රීයව යාවත්කාලීන වෙමින් පවතී

<p class="text-muted credit">Copyright &copy;
    <?php
        $copyYear = 2017; // Set your website start date
        $curYear = date('Y'); // Keeps the second year updated
        echo $copyYear . (($copyYear != $curYear) ? '-' . $curYear : '');
    ?> 
</p>    

එමඟින් ප්‍රති results ල ලැබෙනු ඇත

copyright @ 2017   //if $copyYear is 2017 
copyright @ 2017-201x    //if $copyYear is not equal to Current Year.

2
<?php date_default_timezone_set("Asia/Kolkata");?><?=date("Y");?>

ගතික ප්‍රකාශන හිමිකම් වර්ෂය ලබා ගැනීම සඳහා ඔබට මෙය පාදක කොටස් වලින් භාවිතා කළ හැකිය



-1
<?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;
?>

1
මෙය ඔවුන් ඉල්ලන දෙයක් හෝ පැහැදිලි පිළිතුරක් නොවේ.
එලියට් ඒ.

-2

ඔබ ඩේටයිම් සඳහා කාබන් PHP API දිගුව භාවිතා කරන්නේ නම් , ඔබට එය පහසුවෙන් සාක්ෂාත් කරගත හැකිය:

<?php echo Carbon::now()->year; ?>

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.