I wanted to make a PHP function that would make text bold between double asterisks, and italic between one asterisk, (quite like the editor on stackoverflow).
I am not too familiar with it but you are going to need a Regular Expression. Look into preg_replace()
I recently implemented a server-side text highlighting system to complement jQuery UI's AutoComplete.
My adaptation of your idea would be something like this:
$txt = 'not bold [BeginBold]Yes Bold[EndBold] not bold again';
$newtxt = str_replace("[BeginBold]", "<b>", $txt);
$newtxt = str_replace("[EndBold]", "</b>", $txt);
echo $newtxt;
this would produce:
not bold Yes Bold not bold again
A simple regex will do the trick:
$thenewtext = preg_replace('#\*{2}(.*?)\*{2}#', '<b>$1</b>', '**Hello World** of PHP');