麻烦“<”在php echo中

时间:2013-10-05 21:56:23

标签: php echo

我正在开发一个类似UVa的网站,用户可以在其中提交源代码来解决问题。但是,我正在存储他们提交的源代码,以便以后可以看到他们的源代码。我的mySql服务器保持正常。但是当我回应它时使用php,它没有显示它应该的方式。例如,假设我有以下代码:

#include <stdio.h>
int main(){
 if(5<6)printf("don't joke with me...");
} 

当我从数据库中回显它时,它只显示如下:

#include 
    int main(){
     if(5
    } 

所以,我发现它什么时候发现“&lt;”之后在那之后没有显示任何内容。 我该如何解决这个问题。任何建议将不胜感激......

2 个答案:

答案 0 :(得分:4)

我假设您在浏览器中显示它。你需要在html中转义具有特殊含义的字符。

另请参阅函数htmlspecialchars()http://php.net/htmlspecialchars

答案 1 :(得分:1)

当您回显字符串时,请使用htmlentities()。

echo htmlentities($value_from_database);

我希望浏览器能够获得第一个&lt;作为html标签的开头。