You are using a preg_match_all when you need to use preg_replace.
Here is one way to do it:
$string = 'The quick brown {fox} jumps over the lazy {dog}';
$arrFrom = array('/{fox}/', '/{dog}/');
$arrTo = array('cat', 'mouse');
$string = preg_replace($arrFrom, $arrTo, $string);
echo $string;
Alternatively, you can group the arrays inside the pattern like so:
$string = 'The quick brown {fox} jumps over the lazy {dog}';
$string = preg_replace(array('/{fox}/', '/{dog}/'), array('cat', 'mouse'), $string);
echo $string;