Hello
This idea is based on giving an easily extendable BBCode Parser not just with smiles or simple BBCodes but also with Complex ones ( nested , custom PHP handling function )
In PHPClasses : http://www.phpclasses.org/browse/package/4829.html
Documentation , Details & Example : http://harrrrpo.googlepages.com/bbengine
---
Features and main points in brief :-
1)It depends on saving tags info in a DB for easy Extendability (as it provides out-of-code dynamic of adding , removing and deleting )
2)Provides Processing Priority for each tag allowing for writting tags that depends on each others with no code modifications
3)The Class Provides Parsing/UnParsing in 4 types
Direct Words : Directly replace words with others like ( {} =>Smile photo (html <img>) )
Direct Tags : Replace Html Tags with BBCode directly (text replace) like ( {b}ASD{/b} => <strong>ASD</strong> )
Indirect Non Recursive : Mainpulate content in BBCode with user defined function both for Parsing & UnParsing (Stored in DB) Content and Arguments of BB tag is supplied to the function here BBCode tags can't be Nested like ( {url=http://google.com}Google{/url} => {a href="http://google.com"}Google{/a} )
Indirect Recursive : The Same Indirect manner with the added ability of Parsing Nested tags like ( {size=20}Big {size=40}Bigger{/size}Word{/size} => <span style="font-size: 20px;">Big<span style="font-size:40px;">Big Label</span>Word</span> )
( ofcource { here denotes [ but written like that not to be recognized by forum Parser )
4)It also comes with some pre-made BBCodes as an SQL dump to provide most famous BBCodes
----
want to hear from you what you think about idea , implementation and any possible enhancements