用数字数据写所有月前三个字母

时间:2018-05-12 16:10:26

标签: php datetime

我试图写下这样的所有12个月(前三个字母):

for ($x=1; $x<=12; $x++) {
    echo "<div class='cpitem' data-x='???'>" . date('M') . "</div>\n";
}

最终结果应为:

<div class='cpitem' data-x='01'>JAN</div>
<div class='cpitem' data-x='02'>FEB</div>
<div class='cpitem' data-x='03'>MAR</div>
...

任何帮助?

1 个答案:

答案 0 :(得分:0)

您可以使用strtotime()并使用$x作为月份。然后,可以将此时间戳与date()一起使用。 date()的格式为:

  • m &#34;一个月的数字表示,带前导零&#34;
  • M &#34;一个月的简短文字表示,三个字母&#34;

for ($x=1; $x<=12; $x++) {
    $tm = strtotime("2000-$x-01"); // Here, 2000 is arbitrary.
    echo "<div class='cpitem' data-x='".date('m',$tm)."'>" . strtoupper(date('M',$tm)) . "</div>\n";
}

输出:

<div class='cpitem' data-x='01'>JAN</div>
<div class='cpitem' data-x='02'>FEB</div>
<div class='cpitem' data-x='03'>MAR</div>
<div class='cpitem' data-x='04'>APR</div>
<div class='cpitem' data-x='05'>MAY</div>
<div class='cpitem' data-x='06'>JUN</div>
<div class='cpitem' data-x='07'>JUL</div>
<div class='cpitem' data-x='08'>AUG</div>
<div class='cpitem' data-x='09'>SEP</div>
<div class='cpitem' data-x='10'>OCT</div>
<div class='cpitem' data-x='11'>NOV</div>
<div class='cpitem' data-x='12'>DEC</div>