Maison > Article > développement back-end > Formater l'heure de la liste de discussion
Récemment implémenté une fonction similaire au chat du service client.
Mais je ne sais pas grand-chose sur le format de l'heure qui doit être affiché dans la liste
Alors, référez-vous à la logique d'affichage de l'heure de la liste de discussion WeChat. J'ai moi-même implémenté une fonction
Règles spécifiques :
Si un horodatage formaté (t)> au petit matin de la journée est requis, alors "AM/PM xx:xx" sera affiché si t> Si l'horodatage tôt le matin d'hier est "hier", si t> est l'horodatage tôt le matin de ce lundi, alors "semaine x" sera affiché. la semaine dernière x" sera affiché si t
Code spécifique :
/** * 格式化聊天列表时间 * @param $timestamp int 时间戳 * @return false|string */ public static function formatChatListTime($timestamp){ $today = strtotime('today'); $yesterday = strtotime('yesterday'); // 本周一 $thisMonday = $today - ((date('w',time()) == 0 ? 7 : date('w',time()))-1)*24*3600; // 上周一 $lastMonday = $thisMonday - 7*24*3600; if ($timestamp > $today){ $a = date('a', $timestamp); $t = date('h:i', $timestamp); if ($a == 'am'){ $a = '上午 '; }else{ $a = '下午 '; } $result = $a.$t; }else if ($timestamp > $yesterday){ $result = '昨天'; }else if ($timestamp > $thisMonday){ $result = self::getWeekDesc($timestamp); }else if ($timestamp > $lastMonday){ $result = '上' . self::getWeekDesc($timestamp); }else{ if (date('Y', $timestamp) == date('Y', time())){ $result = self::dateTimeFormat($timestamp, 'm月d日'); }else{ $result = self::dateTimeFormat($timestamp, 'Y年m月d日'); } } return $result; } /** * 获取指定时间戳的星期几-中文描述 * @param int $timeStamp 时间戳 * @return string */ public static function getWeekDesc($timeStamp){ if(intval($timeStamp) == 0){ return ''; } $week = date('w', $timeStamp); switch ($week){ case 0: $desc = '星期日'; break; case 1: $desc = '星期一'; break; case 2: $desc = '星期二'; break; case 3: $desc = '星期三'; break; case 4: $desc = '星期四'; break; case 5: $desc = '星期五'; break; case 6: $desc = '星期六'; break; default: $desc = ''; break; } return $desc; }
Cet article provient du Tutoriel PHP colonne, bienvenue pour apprendre.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!