String indexes do not cast

I can't even.

php > print 2[0];
PHP Parse error:  syntax error, unexpected '[' in php shell code on line 1
php > $a=2;
php > print $a[0];
php > $a='2';
php > print $a[0];
2
php > $a=2;
php > print $a{0};
php >

Sure, the syntax error makes sense but the rest? Of course substr($a, 0, 1) works always.