Bu sanırım işini görür
$linkler = "
http://www.site.com/x/123456.html
http://www.site.com/y/789456.html
http://www.site.com/z/456123.html
";

$link_ayir = explode('.html',$linkler);
foreach($link_ayir as $link){
   $yaz =   explode('/',$link);
    echo str_replace($yaz[3],"a/b/c",$link);
    echo '<br>';
}