Advanced bbcode parser |
[eluser]CoffeeBeanDesign[/eluser]
Hi guys, I've written a bbcode parser and I think it can be improved. Consider the following code : Code: // email tag I've got about 10 of these 'special' bbcode tags ( over and above the standard b, i, u ect which are handled by a nice and easy preg_replace with search/replace arrays ). It struck me that this is a cack handed way to do these special tags - what I want to do is wrap these into a single function which checks the tag ( for example 'email' ), looks for and calls the parse method (in the class). The important thing is that all the tags have a possible second variable i.e. Code: [email][email protected][/email] creates "[email protected]" It struck me that if I can create a single function to check for the method (always prefixed with "_parse_bb_") it would be a lot simpler to add in extra special tags later. So I guess it needs to be something like a preg_replace ("'\[(.*?)\](.*?)\[/(.*?)\]'s", $text) to find out what the tag is ( the bit between the brackets ) then do a method_exists, then call the correct parse function on the result?? I just can't get my head around how to do it. Your help would be very much appreciated. |
Welcome Guest, Not a member yet? Register Sign In |