PHP preg_split: Divide a string por outras strings

Eu quero dividir uma string grande por uma série de palavra

Por exemplo

$splitby = array('these','are','the','words','to','split','by');
$text = 'This is the string which needs to be split by the above words.';

Então os resultados seriam:

$text[0]='This is';
$text[1]='string which needs';
$text[2]='be';
$text[3]='above';
$text[4]='.';

Como posso fazer isso? Épreg_split da melhor maneira, ou existe um método mais eficiente? Gostaria que fosse o mais rápido possível, pois dividirei centenas de MB de arquivos.

questionAnswers(4)

yourAnswerToTheQuestion