When I type
//if ( 0 ) { echo -a a }
it doesn't echo 'a', but when I type
//if ( 1 ) { echo -a a }
(or anything else in the ( )) it does echo 'a'.

What are the rules for whether it will echo or not, as it seems a bit odd to not echo it just when 0 is put in, because 0 isn't anything special.