<?phpclass TorrentBilgi{var $indeks;var $kaynak;var $finaldizi;function islemler() {$karakter = $this->kaynak[$this->indeks];if (is_numeric($karakter)) return $this->islemler_metin();if ($karakter == 'i') {++$this->indeks;return $this->islemler_sayi();}if ($karakter=='l') {++$this->indeks;return $this->islemler_liste();}if ($karakter=='d') {++$this->indeks;return $this->islemler_sozluk();}die("ANA İŞLEM: BEKLENMEYEN KARAKTER (pozisyon: $this->indeks): ".$karakter);}function islemler_sayi() {$mevcut_karakter='';$numara = "";while (($mevcut_karakter = $this->kaynak[$this->indeks]) != 'e') {++$this->indeks;$numara .= $mevcut_karakter;}++$this->indeks;return (int) $numara;}function islemler_metin(){$boyut ="";while($this->kaynak[$this->indeks] != ':') {$boyut .= $this->kaynak[$this->indeks];++$this->indeks;}$i = ++$this->indeks;$this->indeks += $boyut;$x= substr($this->kaynak, $i, $boyut);return $x;}function islemler_liste() {$dondur_liste = array();while ($this->kaynak[$this->indeks] != 'e') {$this->indeks1 = $this->indeks;$dondur_liste[] = $this->islemler();if ($this->indeks1 == $this->indeks) die("LİSTEDE SONSUZ DÖNGÜ");}++$this->indeks;return $dondur_liste;}function islemler_sozluk() {$dondur_sozluk = array();while ($this->kaynak[$this->indeks] != 'e') {$this->indeks1 = $this->indeks;$dondur_sozluk[$this->islemler_metin()] = $this->islemler();if ($this->indeks1 == $this->indeks) die("SÖZLÜKTE SONSUZ DÖNGÜ");}++$this->indeks;return $dondur_sozluk;}function ayristir($dosyaisim) {$this->kaynak = file_get_contents($dosyaisim);$this->indeks = 0;$dosyaboyut = strlen($this->kaynak);$this->finaldizi=array();while($this->indeks<$dosyaboyut) {$this->indeks1 = $this->indeks;$islemler=$this->islemler();unset($islemler["info"]["pieces"]);$this->finaldizi[] =$islemler;if ($this->indeks1 == $this->indeks) die("KÖK LİSTESİNDE SONSUZ DÖNGÜ");}$this->kaynak = '';return $this->finaldizi;}}$x = new TorrentBilgi();print_r($x->ayristir("http://www.ulusanyazilim.com/wp-content/uploads/download-manager-files/uTorrent_3.5.3.44396.exe.torrent"));?>
Çıktısı
Array([0] => Array([announce] => http://tracker.zamunda.net/announce.php?passkey=fa20455fa921c755acba1144f60cc2f0[created by] => uTorrent/3.5.3[creation date] => 1523690447[encoding] => UTF-8[info] => Array([length] => 58602944[name] => uTorrent_3.5.3.44396.exe[piece length] => 65536)))