Forum > Övriga serverspråk > PHP
Hej alla! :)
Jag håller på att skapa en "template"-funktion som kommer att skriva ut innehållet från .tpl-filer till sidan du besöker.
Till exemel om du besöker index, så läser den från filen "index.tpl", och likadant med andra filer. (Om inte filen existerar så skriver den ut felmeddelande => error.tpl)
Faktiskt så har jag kommit till ett problem..
Jag vill ersätta "variablar" i template-filerna via php-funktionen "str_replace", men det fungerar inte som det ska.
Variablarna ser ut såhär i template-filerna: {$VARIABEL}
Och så ska denna funktionen ersätta det med vad jag skriver in..
function replace($var, $content) {
$this->template = str_replace("{$".$var."}", $content, $this->template);
}
Felmeddelandet den ger mig är: Parse error: syntax error, unexpected '"', expecting T_VARIABLE or '$' in ****** on line 77
Skulle varit väldigt tacksam om man fick lite hjälp. (:
/Fredrik
Vad var felet? Du har satt tråden som löst så det hade varit trevligt om du delar med dig dina lösningar också.
Nej problemet är tyvärr inte löst, men orkar inte lägga ner tid på ett sådant gammalt projekt..
No solution found, sorry.. ;P
Nej problemet är tyvärr inte löst, men orkar inte lägga ner tid på ett sådant gammalt projekt..
No solution found, sorry.. ;P
men jag gissar på att vad du gör för fel är att använda dig av $ i en php sträng, om det är $ du vill matchar på så få du bryta ut den \$, gjorde ett exempel:
<?
$subject = "<head>{\$head}</head>";
function replace($var, $content, $r) {
return str_replace("{\$".$var."}", $content, $r);
}
echo(replace("head", "ett test", $subject)); // "<head>ett test</head>"
?>
...
function replace($var, $content) {
$this->template = str_replace("{\$".$var."}", $content, $this->template);
}
...