En la expresión regular
/(.+)\s\s+/
, la última parte
\s\s+
es innecesaria. El punto representa a cualquier caracter, incluidos espacios.
Lo he probado así:
Código PHP:
Ver original$npccompra = 'Robert, Sam, Yanni, Morpel, Rock In A Hard Place, Baltim';
echo implode('<br />', $array_compra) . '<br />';
Y he obtenido lo siguiente:
Código HTML:
Ver original[[Robert]]
<br />[[Sam]]
<br />[[Yanni]]
<br />[[Morpel]]
<br />[[Rock In A Hard Place]]
<br />[[Baltim]]
<br />
Que creo que es lo que buscas. Solo era cuestión de descomponer a la cadena a partir de las comas y espacio y luego insertar los saltos de línea entre cada fragmento.
Saludos