ご指摘いただいたとおりpreg_replaceでやってみることにしました。


$string = $text[$i];
$pattern = "|>([0-9]+)|";
$replacement = "<a href=#\${1} title=$text[\${1}]>>\${1}</a>";

print preg_replace($pattern, $replacement, $string);


前と同じような段階までは進むのですが title=$text[\${1}] やはり同じくこの部分で引っかかってしまいます。

エラーメッセージは
Parse error: parse error, unexpected T_CHARACTER, expecting T_STRING or T_VARIABLE or T_NUM_STRING
$textないをクオーテーション等でくくってみてもうまくいかず、アドバイスいただけたらと思います。