CBOR实现在PHP 5.3.3上产生错误

时间:2015-03-09 14:06:31

标签: php cbor

我正在使用CBOR来打包我的C应用程序和PHP脚本中的数据。对于PHP,我从上面的网站下载了implementation。它适用于PHP 5.4.23,但在PHP 5.3.3上,包括CBOREncoder.php会产生错误:

Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /var/www/html1/......./CBOREncoder.php on line 15

这是CBOREncoder.php的开头:

<?php

/**
 * CBOR encoder/decoder
 *
 * http://tools.ietf.org/html/rfc7049
 * http://habrahabr.ru/post/208690/ thx man :)
 *
 * Class CBOREncoder
 */
class CBOREncoder
{
    const
        MAJOR_OFFSET = 5,
        HEADER_WIPE = 0b00011111, <-- this line produces error
        ADDITIONAL_WIPE = 0b11100000,

有什么问题?

1 个答案:

答案 0 :(得分:2)

问题是PHP 5.3.x不支持二进制数。这包含在PHP 5.4中。

来自php网站:http://php.net/manual/en/migration54.new-features.php

  

已添加二进制数字格式,例如0b001001101。

因此,CBOR不支持PHP 5.3