Skip to content

Firehed/cbor-php

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CBOR-PHP

Tools for working with the CBOR data format in PHP

Installation

composer require firehed/cbor

Usage

Note: Only decoding is supporing at this time

Decoding

$decoder = new Firehed\CBOR\Decoder();

$binaryString = "\x18\x64"; // CBOR for int(100)
$data = $decoder->decode($binaryString);

// OR
$byteArray = [24, 100];
$data = $decoder->decodeArrayOfBytes($byteArray);

There is currently very limited support for tagged types. When an unsupported tag is encountered, an OutOfBoundsException will be thrown.

Tagged type support

  • 0 DateTime as string
  • 1 DateTime as epoch
  • 2 Positive Bignum (returns as string, requires bcmath)
  • 3 Negative Bignum (same)
  • 4 Decimal fraction
  • 5 Bigfloat
  • 21 base64url string
  • 22 base64 string
  • 23 base16 string
  • 24 CBOR
  • 32 URI
  • 33 base64url
  • 34 base64
  • 35 regexp
  • 36 MIME message
  • 55799 Self-describing CBOR