1
0
mirror of https://github.com/danog/PHPStruct.git synced 2024-11-30 04:19:08 +01:00
Go to file
danogentili c78cb80973 update
2016-07-11 12:34:03 +02:00
lib/danog/PHP update 2016-07-11 12:33:56 +02:00
tests/danog/PHP Update tests. 2016-07-09 20:49:23 +02:00
.gitignore First commit (master) 2016-07-04 01:43:23 +02:00
.travis.yml Clarified error messages and made exception var_dump message if run from phpunit 2016-07-09 20:31:23 +02:00
composer.json Rename package and start translating tests. 2016-07-05 19:29:13 +02:00
example.php update 2016-07-11 12:33:56 +02:00
LICENSE First commit (master) 2016-07-04 01:43:23 +02:00
README.md Update docs 2016-07-09 21:12:33 +02:00
think Update 2016-07-06 23:36:35 +02:00

PHPStruct class

Build Status

Licensed under MIT.

PHP implementation of Python's struct module.

This library was created to help me develop a client for the mtproto protocol.

The functions and the formats are exactly the ones used in python's struct (https://docs.python.org/2/library/struct.html)

For now custom byte size is not fully supported, as well as p and P formats.

Installation

Install using composer:

composer require danog/phpstruct

Usage

require('vendor/autoload.php');
$struct = new \danog\PHP\Struct();
$pack = $struct->pack("2cxi", "ab", 44);
$unpack = $struct->unpack("2cxi", $pack);
var_dump($unpack);
$count = $struct->calcsize("2cxi");

This library can also be used statically:

require('vendor/autoload.php');
$pack = \danog\PHP\Struct::pack("2cxi", "ab", 44);
$unpack = \danog\PHP\Struct::unpack("2cxi", $pack);
var_dump($unpack);
$count = \danog\PHP\Struct::calcsize("2cxi");

Daniil Gentili