我的统计数据需要动态图片上的“上次更新”部分,并以小时为单位表示。这可以通过以下方式完成:
$lastDate = $StatData->date;
$now = date("Y-m-d G:i:s");
$hours = (strtotime($now) - strtotime($lastDate)) / 3600;
使用imagettftext在图像上显示$ hours可以正常工作。它的长度最多为16个字符。所以为了解决这个问题,我尝试了以下方法:
if($hours < 10) {
substr($hours,0,4);
} else {
substr($hours,0,5);
}
目的是显示不超过两位小数。结果没有变化。好像代码甚至没有。
所以我的问题是两个中的一个:1:我如何让它工作? 2:我知道有一种限制小数位的方法,不使用substr,但它是什么?可能是一个更好的解决方案。
答案 0 :(得分:0)
使用round()
:
$hours = round((strtotime($now) - strtotime($lastDate)) / 3600, 2); // 2 decimals
答案 1 :(得分:0)
您也可以使用number_format
$hours = number_format($hours, 2);