我正在挖掘这个专业程序员为我设计的一个活动网站的代码,我发现这个功能似乎超级混乱,因为它看起来像1行代码与"strtotime"
会做同样的事情。strtotime而不是这个很长的功能?
是否因为我们想在月份之后使用两个字母来使用"Jan 2nd"
格式?
function convert_date_to_web($date) {
if (empty($date) || $date == "0000-00-00") return $date;
switch ($date[5].$date[6]) {
case '01':
$month = 'Jan';
break;
case '02':
$month = 'Feb';
break;
case '03':
$month = 'Mar';
break;
case '04':
$month = 'Apr';
break;
case '05':
$month = 'May';
break;
case '06':
$month = 'Jun';
break;
case '07':
$month = 'Jul';
break;
case '08':
$month = 'Aug';
break;
case '09':
$month = 'Sep';
break;
case '10':
$month = 'Oct';
break;
case '11':
$month = 'Nov';
break;
case '12':
$month = 'Dec';
}
if($date[9] == "1") {
$day = $date[9]."st";
}
else if ($date[9] == "2") {
$day = $date[9]."nd";
}
else if ($date[9] == "3") {
$day = $date[9]."rd";
}
else {
$day = $date[9]."th";
}
if($date[8] != "0") {
$day = $date[8].$day;
}
$date = $month." ".$day.", ".$date[0].$date[1].$date[2].$date[3];
return $date;
}
而且我的版本是
$timestamp = strtotime($event->start_date);
$start_date = date("M d, Y", $timestamp);
你能找到任何的例子在您的代码的工作和他们没有(或者相反?)。如果它们是可以互换的,那么我想你就跟着你。仅仅因为某个人是职业球员并不意味着他们总是以最好的方式做一切事情,对! – JAL
关于几个月的段落可以缩短为甚至'$ month_names [((int)$ date [5]。$ date [6])]'(*给定基于1的月份名称阵列,当然*) – Dan
它只是我,还是长版本会吐出像“9月11日”这样的东西? – Hammerite