Any directory script should do the trick. Take a look at http://forums.digitalpoint.com/showthread.php?t=55170 for some ideas on what people are using. FWIW I've just decided to code my own on CakePHP... but it depends on your priorities and what makes your business directory different from all the other directories.