$descr2=str_replace("#".$tag2[0],"<a href='/tag/".$tag2[0]."'>#".$tag2[0]."</a>",$descr2);

Bu satırdaki $tag2[0] kısımlarını for döngüsündeki mevcut iterasyonla atayabilir misiniz? Php syntaxı bilmiyorum ama sanırım $tag2[$a] olması lazım