Hmmm ... joa, 30 sek. sind nicht so gut ...
Du könntest vielleicht so als speedup folgendes machen:
Wenn keine speedup (oder wie auch immer) -Datei existiert:
Templatetext aufwändig durchsuchen, und eine speedup (oder wie auch immer) -Datei anlegen, in der dann steht:
Code:
somevar:23,45,87,132
someother:35,75,231
also erst die variablennamen und dahinter ihre zu ersetzenden Positionen im Text.
Du musst also dann nicht mehr jedesmal alle Variablen mit preg_replace oder so ersetzen, sondern du öffnest diese speedup-Datei und ersetzt gezielt die notierten Vorkommen.
Damit dürfte das ersetzen erheblich schneller gehen (zumindest ab dem 2. mal) und du kannst dich auf deine If-Abfragen konzentrieren
Da ein Template ja nicht ständig gewechselt wird, dürfte das ja insgesamt nicht allzuviel Zeit kosten ...