You are viewing the version of this documentation from Perl blead. This is the main development branch of Perl. (git commit 3c2aa9fef064d0f6a90cb7999b1ca7a4fac4be3a)
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.