David Sklar has a new post to his blog today sharing an extension he's created to make replacing strings in PHP a much faster task - Boxwood.
A straightforward way to do [string replacement] in PHP is to pass an array of words to look for and their replacements to a function like str_replace() or str_ireplace(). Or, similarly, use a regular expression that gloms the search terms together (and potentially checks word boundaries.) There are assorted WordPress plugins that work like this. The problem with this approach is that it's really slow. Especially if you have a lot of words you're looking for. The amount of time it takes to do the search and replace grows in proportion to the number of words you're looking for. This is particularly unfortunate because usually, none of the words are ever found!
With the Boxwood extension, the word list can be as long as needed because it uses an ordered tree structure (trie) to parse the entire tree only once so there's much less overhead.