Geht das überhaupt?
wenn du primär html ausgibst mit doppelten quotes, solltest du in php die quotes umdrehen, dann musst du nicht so viel escapen
zudem ist es kein problem mehrzeiligen code auszugeben
gute variante bei wenig html code:
<?php
$test = 'x';
$meinevariable = 'abc';
if($test=='x')
{
echo '<p>Beispielabsatz <span>' . $meinevariable . '</span></p>' . "\n";
echo '<p>Beispielabsatz2</p>' . "\n";
echo '<p>Beispielabsatz3</p>' . "\n";
echo '<p>Beispielabsatz4</p>' . "\n";
}
?>
<?php
$test = 'x';
$meinevariable = 'abc';
if($test=='x')
{
?>
<p>Beispielabsatz <span><?php echo $meinevariable; ?></span></p>
<p>Beispielabsatz2</p>
<p>Beispielabsatz3</p>
<p>Beispielabsatz4</p>
<?php
}
?>
die variante mit php auf und zu ist aber vergleichsweise langsamer und besonders bei WIRKLICH langen schleifen mehrere hundertausend zeilen code merkt man deutliche performanceunterschiede, da der interpreter durch die ewigen "interpreter hier starten, hier aufhören" anweisungen gebremst wird
in asp/vbs ist dies übrigens sogar bei kurzen scripten schon spürbar
alternativ kann statt
<?php echo $meinevariable; ?>
folgende syntax verwenden
<?=$meinevariable;?>
dafür muss short_open_tag eingeschaltet sein, das ist aber in verbindung mit xml NICHT empfehlenswert da ansonsten <?xml ?> ebenfalls als php interpretiert werden könnte