php8.5
Home/ Manual/ strings / functions/ ord

ord

PHP function Edit on GitHub ✎

(PHP 4, PHP 5, PHP 7, PHP 8)

Convert the first byte of a string to a value between 0 and 255

Description

ord(string $character): int

Interprets the binary value of the first byte of character as an unsigned integer between 0 and 255.

If the string is in a single-byte encoding, such as ASCII, ISO-8859, or Windows 1252, this is equivalent to returning the position of a character in the character set's mapping table. However, note that this function is not aware of any string encoding, and in particular will never identify a Unicode code point in a multi-byte encoding such as UTF-8 or UTF-16.

This function complements chr().

Parameters

character

A character.

Return Values

An integer between 0 and 255.

Changelog

VersionDescription
8.5.0Passing a string which is not a single byte is now deprecated.

Examples

ord() example

php
<?php
$str = "\n";
if (ord($str) == 10) {
    echo "The first character of \$str is a line feed.\n";
}
?>

Examining the individual bytes of a UTF-8 string

php
<?php
$str = "🐘";
for ( $pos=0; $pos < strlen($str); $pos ++ ) {
 $byte = substr($str, $pos);
 echo 'Byte ' . $pos . ' of $str has value ' . ord($byte) . PHP_EOL;
}
?>

The above example will output:

output
Byte 0 of $str has value 240
Byte 1 of $str has value 159
Byte 2 of $str has value 144
Byte 3 of $str has value 152
    

See Also

Source: reference/strings/functions/ord.xml · from the official PHP manual (php/doc-en)