src/Util/Strings.php
public static function chr(int $code): string
    {
        if ($code < 0 || ($code >= 0xD800 && $code <= 0xDFFF) || $code > 0x10FFFF) {
            throw new \InvalidArgumentException('Code point must be in range 0x0 to 0xD7FF or 0xE000 to 0x10FFFF.');
        }

        if (\function_exists('\mb_chr')) {
            return \mb_chr($code);
        }

        if (\function_exists('\iconv')) {
            return \iconv('UTF-32BE', 'UTF-8//IGNORE', \pack('N', $code));
        }

        if (0x80 > $code %= 0x200000) {
            return \chr($code);
        }
        if (0x800 > $code) {
            return \chr(0xC0 | $code >> 6) . \chr(0x80 | $code & 0x3F);
        }
        if (0x10000 > $code) {
            return \chr(0xE0 | $code >> 12) . \chr(0x80 | $code >> 6 & 0x3F) . \chr(0x80 | $code & 0x3F);
        }

        return \chr(0xF0 | $code >> 18) . \chr(0x80 | $code >> 12 & 0x3F) . \chr(0x80 | $code >> 6 & 0x3F) . \chr(0x80 | $code & 0x3F);
    }
public static function chr(int $code): string
    {
        if ($code < 0 || ($code >= 0xD800 && $code <= 0xDFFF) || $code > 0x10FFFF) {
            throw new \InvalidArgumentException('Code point must be in range 0x0 to 0xD7FF or 0xE000 to 0x10FFFF.');
        }

        if (\function_exists('\mb_chr')) {
            return \mb_chr($code);
        }

        if (\function_exists('\iconv')) {
            return \iconv('UTF-32BE', 'UTF-8//IGNORE', \pack('N', $code));
        }

        if (0x80 > $code %= 0x200000) {
            return \chr($code);
        }
        if (0x800 > $code) {
            return \chr(0xC0 | $code >> 6) . \chr(0x80 | $code & 0x3F);
        }
        if (0x10000 > $code) {
            return \chr(0xE0 | $code >> 12) . \chr(0x80 | $code >> 6 & 0x3F) . \chr(0x80 | $code & 0x3F);
        }

        return \chr(0xF0 | $code >> 18) . \chr(0x80 | $code >> 12 & 0x3F) . \chr(0x80 | $code >> 6 & 0x3F) . \chr(0x80 | $code & 0x3F);
    }
public static function chr ( int $ code ) : string { if ( $ code < 0 || ( $ code >= 0xD800 && $ code <= 0xDFFF ) || $ code > 0x10FFFF ) { throw new \ InvalidArgumentException ( 'Code point must be in range 0x0 to 0xD7FF or 0xE000 to 0x10FFFF.' ) ; } if ( \ function_exists ( '\mb_chr' ) ) { return \ mb_chr ( $ code ) ; } if ( \ function_exists ( '\iconv' ) ) { return \ iconv ( 'UTF-32BE' , 'UTF-8//IGNORE' , \ pack ( 'N' , $ code ) ) ; } if ( 0x80 > $ code %= 0x200000 ) { return \ chr ( $ code ) ; } if ( 0x800 > $ code ) { return \ chr ( 0xC0 | $ code >> 6 ) . \ chr ( 0x80 | $ code & 0x3F ) ; } if ( 0x10000 > $ code ) { return \ chr ( 0xE0 | $ code >> 12 ) . \ chr ( 0x80 | $ code >> 6 & 0x3F ) . \ chr ( 0x80 | $ code & 0x3F ) ; } return \ chr ( 0xF0 | $ code >> 18 ) . \ chr ( 0x80 | $ code >> 12 & 0x3F ) . \ chr ( 0x80 | $ code >> 6 & 0x3F ) . \ chr ( 0x80 | $ code & 0x3F ) ; }
Returns a specific character in UTF-8.

@param  int $code code point (0x0 to 0xD7FF or 0xE000 to 0x10FFFF)

@return string
@throws \InvalidArgumentException if code point is not in valid range
Returns a specific character in UTF - 8 .