2013-07-03 13 views
5

: PHP'de etiketleri içeren ham dizeyi nasıl yazdırırım? Örneğin

$str="<script>alert('hello');</script>"; 

Bunu yazdırmak için yankı kullanırsanız

, tarayıcıda bir uyarı penceresi açılacaktır.

Bu durumda ham dize <script>alert('hello');</script>'u nasıl yazdırabilirim? Eğer kelimeler script istiyorsanız

+0

Eğer bunu ancak değiştirilen '<' '>' gerçek içerik gibi bakmak istiyorum RAW etiketler/içerik istediğinizde veya yapıyor musunuz ? – DanFromGermany

+0

ayrıca – camino

cevap

3

kullanırsanız

echo htmlspecialchars($str); 

Sen htmlspecialchars

$str = htmlspecialchars("<script>alert('hello');</script>") 

Dokümanları kullanabilmek http://php.net/manual/en/function.htmlspecialchars.php

gör

$str="<xmp><script>alert('hello');</script></xmp>"; 

jsFiddle: gösterildiği EAL RAW veri, <xmp> etiketi kullanmak http://jsfiddle.net/jvpYp/

uyarı: Eğer sorun haline çalışabilir

$userInput = "</xmp><script>evil javascript</script>"; 
echo "<xmp>" . $userInput . "</xmp>"; 

kullanırsanız

.

güncelleme: <xmp> etiketi HTML 4.0 beri düşmüş ama yine birçok tarayıcıda çalışıyor

İlgili konular