Lo so dal titolo sembra assurdo...provo a spiegarmi meglio

codice:
array split  ( string $pattern  , string $string  [, int $limit  ] )

Splits a string  into array by regular expression.
supponendo che io abbia la stringa

Codice PHP:
$stringa="prova1{id}provatest{nome}";
$arr=split('{*}',$stringa);

print_r($arr); 
codice:
OUTPUT:
Array (
  [0]=>prova1
  [1]=>provatest
)
e se quello che volessi io, fossero "tutte le volte che appare la pattern"?....quindi un array di questo tipo

codice:
OUTPUT:
Array (
  [0]=>{id}
  [1]=>{nome}
)
ovviamente dalla stessa stringa $stringa

penso ci sia una funzione di php che mi permetta di farlo...ma non la trovo su php.net...

si accettano altri suggerimenti :S