Question: What doesn't this work:

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

```

But this and this does?

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

```

Answer: 
You're type casting an invalid number in octal base.
you are explicitly typecasting using `(int)`

Better use `intval().`