Nur, was ich hier mich hier noch wundere, wie käme die Übersetzung da jetzt ins Spiel? Das ist ja nun gar nicht variabel, abgesehen von dem $preis.
Ist vllt ne doofe Frage, aber außerecho $loc_lang["bla"];gibts da nicht so viele Möglichkeiten oder?
Richtig, in dem Fall müsstest du die Texte dann doch mit PHP ausgeben. Die HTML-Tags solltest du aber weiterhin direkt notieren. Also statt
<p>Im wahren Warenkorb befinden sich wahre Waren für <?=$preis?> Euronen.</p>
schreibt man dann üblicherweise:
<p><?php echo htmlspecialchars(translate('Im wahren Warenkorb befinden sich wahre Waren für %1$s Euronen.', $preis)) ?></p>
Wobei die translate-Funktion das Pattern zuerst übersetzt und dann mit allen Parametern an sprintf weitergibt, in etwa so:
function translate ($pattern) {
$options = func_get_args();
array_shift($options);
if (isset($translationArray[$pattern])) {
$pattern = $translationArray[$pattern]
}
return sprintf($pattern, $options);
}