theonedt/bencode

A pure and simple PHP library for encoding and decoding Bencode data

dev-main 2021-03-09 19:52 UTC

This package is not auto-updated.

Last update: 2024-09-19 10:38:03 UTC


README

Codacy Badge FOSSA Status

Bencode is the encoding used by the peer-to-peer file sharing system BitTorrent for storing and transmitting loosely structured data.

This is a pure PHP library that allows you to encode and decode Bencode data.

This library is fork from [OPSnet/bencode-torrent] / [Rhilip/Bencode] (https://github.com/OPSnet/bencode-torrent), with same method like sandfoxme/bencode

Installation

composer require theonedt/bencode

Usage

<?php

require '/path/to/vendor/autoload.php';

use Rhilip\Bencode\Bencode;
use Rhilip\Bencode\ParseErrorException;

// Decodes a BEncoded string
Bencode::decode(string $string);

// Encodes string/array/int to a BEncoded string
Bencode::encode(mixed $data);

// Decodes a BEncoded file From path
Bencode::load(string $path); 

// Encodes string/array/int to a BEncoded file
Bencode::dump(string $path, mixed $data); 

// With Error Catch
try {
    Bencode::decode('wrong_string');
 } catch (ParseErrorException $e) {
    // do something
} 

License

The library is available as open source under the terms of the MIT License.

FOSSA Status