Crontab和PATH

This is my crontab:

SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=""

# m h dom mon dow user  command
17 *    * * *   root    cd / && run-parts --report /etc/cron.hourly
25 6    * * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )
47 6    * * 7   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )
52 6    1 * *   root    test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )
# PHP Script
26 16     * * *   root  /usr/bin/php /var/www/script.php
#

Why I should put the full php path (/usr/bin/php) also if there is in PATH variable? Otherwise the script doesn't work.

Because crontab runs under user, who have other value of PATH. For more info: https://askubuntu.com/questions/219692/why-the-value-of-path-is-different-for-root-and-normal-user