Prova così:

preg_replace('#\[img\](.+?)\[/img\]#si', '', $text);