Question: What doesn't this work:

```
(int)08 == (int)09==0

```

But this and this does?

```
(int)07==7 
(int)06==6 

```

Answer: 
because `08` and `09` are not valid octal numbers. [see warning in docs](http://docs.php.net/types.integer).
> 
> To use hexadecimal notation precede the number with 0x.
> 
> 
> 

Therefore, 

```
 $num = (int)0x9
 $num == 9

```