in reply to Re: Array empty
in thread Split on . (dot)

Close. But ord($_) returns 0 not because it contains a null byte, but because it is an empty string.
print ord("");
prints: 0
(Where on earth would he be getting null bytes from?)

Indeed, the resulting array he's getting after doing

$ip = "21.23\n"; @t = split /./, $ip;
is
("", "", "", "", "", "\n")

The explanation: every character in the input string, except the newline, is used as a split delimiter. Thus you get, as a result, the stuff between those characters, which is nothing every time, except at the last character.