PHP değişken değer olarak HTML atamak nasıl?

4 Cevap php

Amacım daha sonra echo sonra, bir değişkenin bazı html-biçimlendirilmiş verileri depolamak için.

Örneğin:

<?php 
$foo = '<div id="x">';
echo $foo;
?>

Yukarıdaki çalışmıyor. Neden?

Edit

Sorry for the bad question. I thought it didn't work because nothing is visible when viewed in a browser. Of course nothing is visible because there is only a div and no text. Doh! My "real life" version of the above script was broken due to an extra apostrophe.

4 Cevap

Muhtemelen çalışır, ancak web sayfasında görsel olarak değil, bu kaynak kodu, çünkü onu görmeye ve değiliz.

Aslında web sayfası kaynak kodunu görüntülemek için mi arıyorsunuz? Böylece ile &lt; ve &gt; içine < ve > karakterleri açmak gerekir eğer htmlspecialchars.

Ben (stackoverflow karakterlerin bazı karıştırıldıysa sürece) sizin örnekte ne işe yaramaz görmüyorum. Sen tırnak alternatif ediyoruz. Öte yandan, işe yaramazsa ne söylemedi. Bir derleme hatası ya da hiçbir şey basılı ya ... mi?

Bu nasıl çalışır?

$foo = "<div id=\"x\">";

html metin adil bir miktar varsa, heredoc syntax bakabilirsiniz.

$name = 'MyName';

echo <<<EOT
My name is "$name". I am printing some $foo->foo.
Now, I am printing some {$foo->bar[1]}.
This should print a capital 'A': \x41
EOT;

veya ...

$mytext = <<<EOT
... a bunch of html text here ...
EOT;

Benim için çalışıyor. Hata başka bir yerde olmalı, hata günlüğünü denetleyin?

<?php 
$foo = '<div id="x">something</div>';
echo $foo;
?>

Benim için çalışıyor. Sen div kapatın vermedi.