我正在處理一個項目,他們已經將以下類型的編碼數據存儲在mysql數據庫的BLOB類型列中。我問過,並且被告知這是Bencode,但是,從我在網上看到的它看起來並不是標準的Bencode。這是什麼類型的編碼?我被告知它是Bencode,但它看起來不標準
爲維基Bencode
http://en.wikipedia.org/wiki/Bencode編碼數據的
例
a:11:{i:0;a:3:{s:11:"question_id";s:2:"46";s:6:"answer";s:1:"2";s:7:"correct";b:1;}i:1;a:3:{s:11:"question_id";s:2:"45";s:6:"answer";s:1:"2";s:7:"correct";b:0;}i:2;a:3:{s:11:"question_id";s:2:"44";s:6:"answer";s:1:"2";s:7:"correct";b:0;}i:3;a:3:{s:11:"question_id";s:2:"43";s:6:"answer";s:1:"1";s:7:"correct";b:0;}i:4;a:3:{s:11:"question_id";s:2:"42";s:6:"answer";s:1:"3";s:7:"correct";b:0;}i:5;a:3:{s:11:"question_id";s:2:"41";s:6:"answer";s:1:"2";s:7:"correct";b:0;}i:6;a:3:{s:11:"question_id";s:2:"40";s:6:"answer";s:1:"0";s:7:"correct";b:1;}i:7;a:3:{s:11:"question_id";s:2:"39";s:6:"answer";s:1:"0";s:7:"correct";b:0;}i:8;a:3:{s:11:"question_id";s:2:"38";s:6:"answer";s:1:"1";s:7:"correct";b:1;}i:9;a:3:{s:11:"question_id";s:2:"37";s:6:"answer";s:1:"3";s:7:"correct";b:0;}i:10;a:3:{s:11:"question_id";s:2:"36";s:6:"answer";s:1:"2";s:7:"correct";b:1;}}
我已經注意到,到目前爲止
我已經注意到, Ë ncoding使用類似於Bencode的字母和整數來描述不同類型的數據。
實施例: s:11:"question_id";
我假定s
代表「字符串」,並且11
被限定串question_id
的長度。此外,看起來數據的開頭(a:11:
)描述了長度爲11的數組。雖然這與標準Bencode類似,但似乎並未使用Bencode使用的標準語法。
有沒有人有任何想法這是什麼類型的編碼?這是一種非標準的Bencode格式,還是完全不同的東西?我正在尋找一個PHP或Python解析器,並有一個編碼名稱肯定會幫助我的搜索。
非常感謝,欺騙!我已經堅持了幾天。更好的是它是一種PHP格式,並且易於解碼。 – mcriecken