Skip to content

Negative integers are always encoded as INT8 #6

Description

@laufhannes
var_dump(UBJSON::decode(UBJSON::encode(-129)));
// out: int(127)

because of

php-ubjson/UBJSON.php

Lines 166 to 181 in 137001f

if (256 > $numeric) {
$swap = false;
if (0 < $numeric) {
$result = self::UINT8;
$pack = 'C';
} else {
$result = self::INT8;
$pack = 'c';
}
} elseif (32768 > $numeric) {
$result = self::INT16;
$pack = 's';
} elseif (2147483648 > $numeric) {
$result = self::INT32;
$pack = 'l';
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions