PHP: Eğer bir dize değerlendirilir istemiyorum bunu nasıl belirtebilirim?

7 Cevap php

Ben şöyle bir veritabanında bazı php kodu var

$x = "<?php some code here ?>";

ama ben php olmadan tarayıcı bütün çizgi değerlendirirken o çıkış istiyorum. Şu anda ne yazık ki onu değerlendirmek. Bunu ancak işe yaramadı kaçan düşündüm. Bir insan nasıl bu başarmak olabilir?

Teşekkürler

EDIT:

<?php

echo '<? hey ?>';
echo "<dog dog>";

?>

Ben bu kodu çalıştırırsanız köpek köpek etiketi <? hey ?> değil gibi tarayıcı kaynak kodu gösterir. Yine değerlendirirken olacak gibi görünüyor.

Düzen, cevabını aldım, herkese teşekkür ederim.

7 Cevap

'Tek tırnak' tam olarak dize interpert PHP söyle. Tüm boşluk ve karakterleri tam olarak isimli içerecektir.

Dizesini ayrıştırmak için PHP söyle "çift tırnak". Bu, boşluk azaltır değişkenleri değiştirir, ve diğer sihirli bir dize şeyleri ayrıştırır.

Son olarak, `backticks` kabuk komutları için kullanılır.

Eğer tam olarak böyle bir tarayıcıda görüntülemek için çalışıyorsanız, size htmlentities($string) denemek isteyebilirsiniz.

Sadece yapın:

echo htmlspecialchars($x);

Eğer bu gibi görünmesini ister misiniz? Eğer öyleyse, dize kodlamak için (kesinlikle sadece &lt; gereklidir) &lt; ve &gt; kullanmanız gerekir.

'yerine "arasında (tek tırnak) (çift tırnak) kullanın

Ih PHP çift tırnak ifadeleri değerlendirmek, tek tırnak yapamaz yani:

$a = 123;
$b = "value of $a"; // value of 123
$c = 'value of $a'; // value of $a

Tek tırnak ile tek sorun onlar \n satırsonlarının için (tek tırnak koyduğunuzda \n değil bir satır olarak basılacaktır) gibi karakterleri anlayamıyorlar.

Yani tüm ihtiyaç vardır:

echo '<?php some code here ?>';

?

Daha fazla bilgi için PHP kılavuzda Strings bkz.

Sen değerlendirildi olur ne hakkında biraz belirsiz konum.

Değişkenler hakkında konuşuyor, burada doğru cevaplar bol vardır.

Eğer <? ?> bloğunda bahsediyoruz eğer, bir terslik var. Eğer bir PHP bloğunun (Eğer açılış ve kapanış PHP ifadeleri demek durumunda) bu dize not değerlendirilmelidir.

Belki açılış eksik ve <? ?> önce ve ameliyattan sonra kapanıyor?

Eğer php kod çıktısı ediyorsanız bile highlight_string hangi girişine vurgulayarak sözdizimi gerçekleştirecek kullanmayı düşünebilirsiniz