You are viewing the version of this documentation from Perl blead. This is the main development branch of Perl. (git commit 815d0d1337a0f328fa38b1a08c31a0c1a8253a1b)
length EXPR
length

Returns the length in characters of the value of EXPR. If EXPR is omitted, returns the length of $_. If EXPR is undefined, returns undef.

This function cannot be used on an entire array or hash to find out how many elements these have. For that, use scalar @array and scalar keys %hash, respectively.

Like all Perl character operations, length normally deals in logical characters, not physical bytes. For how many bytes a string encoded as UTF-8 would take up, use length(Encode::encode('UTF-8', EXPR)) (you'll have to use Encode first). See Encode and perlunicode.