Leider behalte ich einen Teil des HTML-Codes in der Datenbank und ich habe Probleme mit dem Rendern mit Variablen.Wie render String mit Variablen?
public function myFunction()
{
//...
// example data
$data = array(
'url' => 'example.com',
'value' => 'Go to website!'
);
//Here I get html code from database, let's say it looks like this:
$htmlPart = "<a href='{$data['url']}'>{$data['value']}</a>";
$html = // rendered $htmlPart with variables
return $html;
}
Wenn ich tun:
echo $htmlPart;
in meiner Funktion. Es funktioniert, aber ich muss $ htmlPart als eine Variable zurückgegeben, aber ich kann es nicht funktionieren.
ich sogar, es zu tun versucht ob_start mit:
ob_start();
echo $htmlPart
$html = ob_get_contents();
ob_end_clean();
Aber es funktioniert nicht, hier ist es, was ich bekommen:
<a href="{$data['url']}">
{$data['value']}
</a>
(diese HTML gerendert ich im Quellcode)
Irgendeine Idee was mache ich falsch?
warum Sie nicht nur Concat die Zeichenfolge mit dem var? ..die altmodische Art, weißt du? – Jeff
Sie haben * wörtlich * also '{$ data ['url']}} in Ihrer Datenbank gespeichert und möchten ihn durch seinen Wert ersetzen? Sie müssen die Zeichenfolge analysieren (möglicherweise mit einem Regex) und die Werte ersetzen. –
Wenn es eine literale Zeichenfolge ist, wie erklären wir: "Wenn ich' echo $ htmlPart 'innerhalb meiner Funktion funktioniert es ". OP kannst du das bestätigen? Es gibt tatsächlich 'href =" example.com "' aus, wenn Sie innerhalb der Funktion ein Echo erzeugen? – BeetleJuice