Troque todos os urls do youtube para incorporar via preg_replace ()

Olá, estou tentando converter os links do youtube em código de incorporação.

é isso que eu tenho:

<?php

$text = $post->text;

     $search = '#<a(.*?)(?:href="https?://)?(?:www\.)?(?:youtu\.be/|youtube\.com(?:/embed/|/v/|/watch?.*?v=))([\w\-]{10,12}).*$#x';
     $replace = '<center><iframe width="560" height="315" src="http://www.youtube.com/embed/$2" frameborder="0" allowfullscreen></iframe></center>';
     $text = preg_replace($search, $replace, $text);


echo $text;
?>

Ele funciona para um link. No entanto, se eu adicionar dois, só irá trocar a última ocorrência. O que eu tenho que mudar?