php中将时间差转换为字符串提示的实现代码

时间:2025-10-13 00:22:04 php语言

php中将时间差转换为字符串提示的实现代码

  通过传入数据库中存储的文章发表时的UNIX时间戳,来转化为例如 几分钟前,几小时前,几天前 这样的提示。就和小编一起去了解下吧!

php中将时间差转换为字符串提示的实现代码

  这看起来更加人性化,好吧,上代码

  复制代码 代码如下:

  <?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) /pic/p>

  {

  if(! (isset($unix_C) || is_numeric($unix_C)) )

  return 'don\'t find parameter';

  $d = time()-$unix_C ; /pic/p>

  $d_int =(int)floor($d/60) ; /pic/60

  $this->unit = 0 ; /pic/p>

  if($d_int < 60){ /pic/p>

  $this->rustle = $d_int;

  $this->unit = 1;

  }

  else if($d_int < 720){ /pic/p>

  $this->rustle = floor($d_int/60);

  $this->unit = 2 ;

  }

  else if($d_int < 7200){ /pic/p>

  $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);

  * /pic/p>

  */

  }

  ?>

【php中将时间差转换为字符串提示的实现代码】相关文章:

PHP中将字符串转化为整数12-16

PHP滚动日志的代码实现11-20

php实现无限级分类实现代码10-05

PHP中如何实现crontab代码07-15

php的curl实现get和post的代码11-12

PHP实现大文件上传源代码11-07

php进度条实现代码12-03

PHP时间转换Unix时间戳代码02-05

如何运用PHP实现字符串逆序排列02-17