str_replace
Smutje
- php
Hi,
ich lese aus einer DB einen tesxt aus, gespeichert in der variablen $text.
$text durchsuche ich nach einem bestimmten string: "[string]"
diesen string möchte ich ersetzen durch include("datei.inc.php");
das mache ich so:
$text = str_replace("[fahrer]", "<?php include("datei.inc.php"); ?>", $text);
aber das funktioniert nicht. mas mache ich da falsch?
die ausgabe von $text sieht so aus: <?php echo $text; ?>
danke für jede hilfe,
Smutje
hi,
$text = str_replace("[fahrer]", "<?php include("datei.inc.php"); ?>", $text);
aber das funktioniert nicht. mas mache ich da falsch?
du befindest dich bereits in einem php-bereich - sonst könntest du ja kein str_replace ausführen - und deshalb ist es unfug, darin mit <?php include ...?> einen weiteren eröffnen zu wollen.
lese den dateiinhalt vorher in eine variable ein (file_get_contents), und gebe diese als zweiten parameter für str_replace an.
gruß,
wahsaga
lese den dateiinhalt vorher in eine variable ein (file_get_contents), und gebe diese als zweiten parameter für str_replace an.
Was aber nicht geeignet ist, wenn die zu inkludierende Datei html-Elemente enthälit. Dafür kannst du strip_tags benutzen.
Ich habe in Dateien, die ich per include einbinde, meistes html-Tags. Ob er/sie es auch hat, weiß ich nicht, aber es ist nur ein Hinweis.
hi,
lese den dateiinhalt vorher in eine variable ein (file_get_contents), und gebe diese als zweiten parameter für str_replace an.
Was aber nicht geeignet ist, wenn die zu inkludierende Datei html-Elemente enthälit.
was soll das im vorliegenden falle für eine bedeutung haben?
gruß,
wahsaga
Hi,
habe es so gelöst:
$contentDatei = file_get_contents ("datei.inc.php");
$text = str_replace("[string]", $contentDatei, $text);
das funzt wundebar,
danke für eure hilfe.