Vendor/phpspreadsheet/phpoffice/phpspreadsheet/src/PhpSpreadsheet/Calculation/Engineering.php
public static function OCTTOHEX($x, $places = null)
    {
        $x = Functions::flattenSingleValue($x);
        $places = Functions::flattenSingleValue($places);

        if (is_bool($x)) {
            return Functions::VALUE();
        }
        $x = (string) $x;
        if (preg_match_all('/[01234567]/', $x, $out) != strlen($x)) {
            return Functions::NAN();
        }
        $hexVal = strtoupper(dechex(self::OCTTODEC($x)));

        return self::nbrConversionFormat($hexVal, $places);
    }
public static function OCTTOHEX($x, $places = null)
    {
        $x = Functions::flattenSingleValue($x);
        $places = Functions::flattenSingleValue($places);

        if (is_bool($x)) {
            return Functions::VALUE();
        }
        $x = (string) $x;
        if (preg_match_all('/[01234567]/', $x, $out) != strlen($x)) {
            return Functions::NAN();
        }
        $hexVal = strtoupper(dechex(self::OCTTODEC($x)));

        return self::nbrConversionFormat($hexVal, $places);
    }
public static function OCTTOHEX ( $ x , $ places = null ) { $ x = Functions :: flattenSingleValue ( $ x ) ; $ places = Functions :: flattenSingleValue ( $ places ) ; if ( is_bool ( $ x ) ) { return Functions :: VALUE ( ) ; } $ x = ( string ) $ x ; if ( preg_match_all ( '/[01234567]/' , $ x , $ out ) != strlen ( $ x ) ) { return Functions :: NAN ( ) ; } $ hexVal = strtoupper ( dechex ( self :: OCTTODEC ( $ x ) ) ) ; return self :: nbrConversionFormat ( $ hexVal , $ places ) ; }
OCTTOHEX.

Return an octal value as hex.

Excel Function:
OCT2HEX(x[,places])

@category Engineering Functions

@param string $x The octal number you want to convert. Number may not contain
more than 10 octal characters (30 bits). The most significant
bit of number is the sign bit. The remaining 29 bits are
magnitude bits. Negative numbers are represented using
two's-complement notation.
If number is negative, OCT2HEX ignores places and returns a
10-character hexadecimal number.
If number is not a valid octal number, OCT2HEX returns the
#NUM! error value.
If OCT2HEX requires more than places characters, it returns
the #NUM! error value.
@param int $places The number of characters to use. If places is omitted, OCT2HEX
uses the minimum number of characters necessary. Places is useful
for padding the return value with leading 0s (zeros).
If places is not an integer, it is truncated.
If places is nonnumeric, OCT2HEX returns the #VALUE! error value.
If places is negative, OCT2HEX returns the #NUM! error value.

@return string
OCTTOHEX .