I came across problem in PHP script that returns week number one higher then system does. In both situations timezone is set to "Europe/Prague".
I've done some tests. Both tests were performed on Debian 8.2 with PHP 5.6.14-0+deb8u1.
date +%W
result was: 43
echo date("W");
result was: 44
date +%W
Returns the week number from a zero index. (0-53)
echo date("W");
Returns the week number from a one index. (1-54)
This means that you'll always need to add one to the linux week or remove one from the php week to compare the two.
Linux starts counting from week 0 as the first week.
PHP starts counting from week 1.
Thats why the linux-result is one less than the actual week we have now.