PHPackages                             kirjaa/torrent-rw - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. kirjaa/torrent-rw

ActiveLibrary

kirjaa/torrent-rw
=================

Composer version of torrent-rw https://github.com/adriengibrat/torrent-rw

v0.0.7(1y ago)01.3k1GPL-3.0-onlyPHPPHP &gt;=5.2.0

Since Aug 31Pushed 1y agoCompare

[ Source](https://github.com/Kirjaa/torrent-rw)[ Packagist](https://packagist.org/packages/kirjaa/torrent-rw)[ RSS](/packages/kirjaa-torrent-rw/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)DependenciesVersions (5)Used By (0)

Torrent RW

PHP version 5.2+

1. Features:

- Decode torrent file or data
- Build torrent from source folder/file(s)
- Silent Exception error system

2. Usage example

```
require_once 'Torrent.php';

// get torrent infos
$torrent = new Torrent( './test.torrent' );
echo 'private: ', $torrent->is_private() ? 'yes' : 'no',
	 'annonce: ', $torrent->announce(),
	 'name: ', $torrent->name(),
	 'comment: ', $torrent->comment(),
	 'piece_length: ', $torrent->piece_length(),
	 'size: ', $torrent->size( 2 ),
	 'hash info: ', $torrent->hash_info(),
	 'stats: ';
var_dump( $torrent->scrape() );
echo 'content: ';
var_dump( $torrent->content() );
echo 'source: ',
	 $torrent;

// get magnet link
$torrent->magnet(); // use $torrent->magnet( false ); to get non html encoded ampersand

// create torrent
$torrent = new Torrent( array( 'test.mp3', 'test.jpg' ), 'http://torrent.tracker/annonce' );
$torrent->save('test.torrent'); // save to disk

// modify torrent
$torrent->announce('http://alternate-torrent.tracker/annonce'); // add a tracker
$torrent->announce(false); // reset announce trackers
$torrent->announce(array('http://torrent.tracker/annonce', 'http://alternate-torrent.tracker/annonce')); // set tracker(s), it also works with a 'one tracker' array...
$torrent->announce(array(array('http://torrent.tracker/annonce', 'http://alternate-torrent.tracker/annonce'), 'http://another-torrent.tracker/annonce')); // set tiered trackers
$torrent->comment('hello world');
$torrent->name('test torrent');
$torrent->is_private(true);
$torrent->httpseeds('http://file-hosting.domain/path/'); // Bittornado implementation
$torrent->url_list(array('http://file-hosting.domain/path/','http://another-file-hosting.domain/path/')); // GetRight implementation

// print errors
if ( $errors = $torrent->errors() )
	var_dump( $errors );

// send to user
$torrent->send();
```

###  Health Score

27

—

LowBetter than 49% of packages

Maintenance34

Infrequent updates — may be unmaintained

Popularity15

Limited adoption so far

Community14

Small or concentrated contributor base

Maturity39

Early-stage or recently created project

 Bus Factor1

Top contributor holds 80.5% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~354 days

Total

4

Last Release

651d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/59ff169615e15fae99c13abbb182d41bb371c15c0ceec6c102f9224c350bb63d?d=identicon)[kirja](/maintainers/kirja)

---

Top Contributors

[![adriengibrat](https://avatars.githubusercontent.com/u/62407?v=4)](https://github.com/adriengibrat "adriengibrat (66 commits)")[![darkalchemy](https://avatars.githubusercontent.com/u/30264374?v=4)](https://github.com/darkalchemy "darkalchemy (7 commits)")[![DRSDavidSoft](https://avatars.githubusercontent.com/u/4673812?v=4)](https://github.com/DRSDavidSoft "DRSDavidSoft (3 commits)")[![Kirjaa](https://avatars.githubusercontent.com/u/43518310?v=4)](https://github.com/Kirjaa "Kirjaa (2 commits)")[![Rudde](https://avatars.githubusercontent.com/u/3603935?v=4)](https://github.com/Rudde "Rudde (1 commits)")[![dimak08](https://avatars.githubusercontent.com/u/5196470?v=4)](https://github.com/dimak08 "dimak08 (1 commits)")[![pavloniym](https://avatars.githubusercontent.com/u/17234942?v=4)](https://github.com/pavloniym "pavloniym (1 commits)")[![aberaud](https://avatars.githubusercontent.com/u/101827?v=4)](https://github.com/aberaud "aberaud (1 commits)")

---

Tags

torrentbencodebittorrenttorrent-rw

### Embed Badge

![Health badge](/badges/kirjaa-torrent-rw/health.svg)

```
[![Health](https://phpackages.com/badges/kirjaa-torrent-rw/health.svg)](https://phpackages.com/packages/kirjaa-torrent-rw)
```

###  Alternatives

[rhilip/bencode

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

4024.1k2](/packages/rhilip-bencode)[arokettu/bencode

BitTorrent's Bencode encoder/decoder

2615.6k7](/packages/arokettu-bencode)[christeredvartsen/php-bittorrent

A set of components that can be used to interact with torrent files (read+write) and classes that can encode/decode to/from the BitTorrent format.

11120.1k2](/packages/christeredvartsen-php-bittorrent)[kleiram/transmission-php

PHP Transmission client

18416.9k1](/packages/kleiram-transmission-php)[arokettu/torrent-file

A class to work with torrent files

2413.9k3](/packages/arokettu-torrent-file)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
