You are viewing the version of this documentation from Perl 5.005. View the latest version
oct EXPR

Interprets EXPR as an octal string and returns the corresponding value. (If EXPR happens to start off with 0x, interprets it as a hex string instead.) The following will handle decimal, octal, and hex in the standard Perl or C notation:

$val = oct($val) if $val =~ /^0/;

If EXPR is omitted, uses $_. This function is commonly used when a string such as 644 needs to be converted into a file mode, for example. (Although perl will automatically convert strings into numbers as needed, this automatic conversion assumes base 10.)