Bu yapmak istediğim budur:
$line = 'blabla translate("test") blabla';
$line = preg_replace("/(.*?)translate\((.*?)\)(.*?)/","$1".translate("$2")."$3",$line);
Yani sonuç "test" çeviri ile değiştirilir ("test") olduğunu çevirmek olmalıdır.
Sorun şu ki çevirmek işleve string "$ 2" geçer ("$ 2") çevirmek olduğunu. Yani (translate) yerine "test", "$ 2" çevirmek için çalışır.
Değiştirmeden önce bir işleve maçın değerini geçmek için bazı yolu var mı?