Heim >Backend-Entwicklung >PHP-Tutorial >PHP wandelt den Zeitunterschied in eine Zeichenfolge um. Beispiel für eine detaillierte Eingabeaufforderung
Durch die Übergabe des UNIX--Zeitstempels des Artikels, der zum Zeitpunkt seiner Veröffentlichung in der Datenbank gespeichert war, wird dieser in Eingabeaufforderungen wie „vor Minuten“, „vor Stunden“ und „vor Tagen“ umgewandelt. Beispielsweise sieht Weibo
benutzerfreundlicher aus, okay, gehen wir zum Code
und der Code lautet wie folgt:
<?php class timeAgo { static $timeagoObject; private $rustle; private $unit; private function construct() { } private function clone(){ } public static function getObject() { if(! (self::$timeagoObject instanceof self) ) self::$timeagoObject = new timeAgo(); return self::$timeagoObject; } private function count_int($unix_C) // main function { if(! (isset($unix_C) || is_numeric($unix_C)) ) return 'don\'t find parameter'; $d = time()-$unix_C ; // $d - unix time difference value $d_int =(int)floor($d/60) ; // minimum unit -- minutes unix/60 $this->unit = 0 ; // is minutes,hour or day? if($d_int < 60){ // minutes in one hour 3600 $this->rustle = $d_int; $this->unit = 1; } else if($d_int < 720){ //hour in one day 3600*12 $this->rustle = floor($d_int/60); $this->unit = 2 ; } else if($d_int < 7200){ //day in ten days 3600*12*10 $this->rustle = floor($d_int/720); $this->unit = 3 ; } else{ $this->rustle = $d ; $this->unit = 4 ; } } public function piece_str($C) { $this->count_int($C); $u = ''; switch( $this->unit ) { case 1: $u = 'minute'; break; case 2: $u = 'hour'; break; case 3: $u = 'day'; break; case 4: $u = ''; break; case 0: return 'sorry , get time is fail'; } if($this->unit < 4) { if($this->rustle > 1) return (string)$this->rustle.$u.'s ago'; else if($this->rustle == 1) return (string)$this->rustle.$u.'ago'; else return 'Just now'; } } /* example: $ago = timeAgo::getObject(); * echo $ago->piece_str($unix); * // 2 days ago */ } ?>
Das obige ist der detaillierte Inhalt vonPHP wandelt den Zeitunterschied in eine Zeichenfolge um. Beispiel für eine detaillierte Eingabeaufforderung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!