You're comparing a string to an integer. The string gets converted to an integer. Casting the string 'b' to an integer produces 0. And 0 is in the range [0..9].
Now try an array that doesn't contain 0:
var_dump((in_array($var{1}, range(5, 9))));
And a type-strict comparison:
var_dump((in_array($var{1}, range(0, 9), true)));