2010-10-05 209 views

回答

1

是对精度几乎微不足道depenging你需要

$days = $weeks * 7; 
$months = floor($days/30); 
+0

完美,谢谢! – bahamut100 2010-10-05 09:28:41

+0

精确的日期/时间计算**从来都不是微不足道的。 – 2010-10-05 12:25:54

+0

这是关于计算的难度 – ITroubs 2010-10-05 12:29:02

-1

你需要有一个开始日期:例如。 162周从....

+0

这仅取决于所要求的精度。如果它没有准确的话,那么一个月的30天足够准确,因为平均每月大约是30.416天 – ITroubs 2010-10-05 09:05:43

2

可以使用DateTime object这一点。创建一个新的日期,从1月1日开始,然后使用add方法,使用x周的DateInterval对象(new DateInterval('P' . $num . 'W');),然后使用the month character格式化日期对象。

+0

谢谢,我为未来保留这个修复。 – bahamut100 2010-10-05 09:29:10

0

1个月是4.34812141周。

因此,这将是:

$months = $weeks/4.34812141; 

如果你想圆起来。您需要:

echo (int)$months; 
0

试试这个:

months = (weeks * 7)/30